<?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 czas nagrzewania - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/tag/czas-nagrzewania/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/tag/czas-nagrzewania/</link>
	<description>Twój partner w projektowaniu komfortu – profesjonalne ogrzewanie podłogowe dla Twojego domu.</description>
	<lastBuildDate>Wed, 17 Jun 2026 15:47:35 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1-32x32.jpg</url>
	<title>Archiwa czas nagrzewania - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/tag/czas-nagrzewania/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Ile czasu nagrzewa się podłogówka?</title>
		<link>https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Wed, 24 Dec 2025 12:29:39 +0000</pubDate>
				<category><![CDATA[Budowa domu]]></category>
		<category><![CDATA[Energooszczędne ogrzewanie]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Komfort cieplny]]></category>
		<category><![CDATA[Komfort cieplny w domu]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Ogrzewanie wodne]]></category>
		<category><![CDATA[Poradnik inwestora]]></category>
		<category><![CDATA[Poradniki dla inwestorów]]></category>
		<category><![CDATA[Porady dla inwestorów]]></category>
		<category><![CDATA[Projektowanie instalacji]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Technika grzewcza]]></category>
		<category><![CDATA[bezwładność cieplna]]></category>
		<category><![CDATA[czas nagrzewania]]></category>
		<category><![CDATA[ile czasu nagrzewa się podłogówka]]></category>
		<category><![CDATA[instalacje grzewcze]]></category>
		<category><![CDATA[jastrych]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[podłogówka wodna]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[sterowanie ogrzewaniem]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2975</guid>

					<description><![CDATA[<p>Ile czasu nagrzewa się podłogówka i dlaczego nie działa tak jak tradycyjny grzejnik? Wodne ogrzewanie podłogowe to system, który oferuje wyjątkowy komfort cieplny, ale wymaga zrozumienia jego specyfiki. Kluczową rolę odgrywa bezwładność cieplna jastrychu, parametry instalacji oraz sposób sterowania. W artykule szczegółowo wyjaśniamy, od czego zależy czas nagrzewania podłogówki, jak wygląda to w praktyce podczas rozruchu, codziennej eksploatacji i nagłych zmian pogody oraz dlaczego prawidłowy projekt instalacji ma decydujący wpływ na dynamikę pracy systemu.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/">Ile czasu nagrzewa się podłogówka?</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: #f0f9ff;
    --rk-intro-accent: #38bdf8;
    --rk-intro-bg: #ffffff;
    --rk-intro-gray: #f8fafc;
    --rk-intro-border: #e2e8f0;
    --rk-intro-text: #334155;
    --rk-intro-highlight: #fef3c7;
    --rk-intro-gold: #b45309;
}

.rk-intro-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-intro-bg);
    border-radius: 20px;
    border: 2px solid var(--rk-intro-dark);
    box-shadow: 0 15px 35px -10px rgba(15, 23, 42, 0.15);
    overflow: hidden;
    /* CELOWO BRAK ANIMACJI ZGODNIE Z WYTYCZNYMI */
}

/* Sekcja Hook / Tytułowa */
.rk-intro-hero {
    background: var(--rk-intro-dark);
    padding: 45px 50px 40px;
    color: #ffffff;
    border-bottom: 5px solid var(--rk-intro-blue);
    position: relative;
}

.rk-intro-hero h2 {
    font-size: 32px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.2;
    color: #ffffff;
    letter-spacing: -0.5px;
}

.rk-intro-hero p.rk-hook-text {
    font-size: 17px;
    color: #cbd5e1;
    margin: 0;
    line-height: 1.6;
    font-weight: 500;
}

/* Szybka Odpowiedź (Featured Snippet Box) */
.rk-qa-box {
    background: var(--rk-intro-blue-light);
    border: 1px solid #bae6fd;
    border-left: 6px solid var(--rk-intro-blue);
    margin: -20px 50px 30px;
    padding: 25px 35px;
    border-radius: 12px;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 25px;
    box-shadow: 0 10px 15px -3px rgba(2, 132, 199, 0.1);
}

.rk-qa-icon {
    background: var(--rk-intro-blue);
    color: #ffffff;
    width: 60px;
    height: 60px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.rk-qa-content h3 {
    margin: 0 0 8px 0;
    font-size: 18px;
    font-weight: 900;
    color: var(--rk-intro-dark);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.rk-qa-content p {
    margin: 0;
    font-size: 16px;
    color: var(--rk-intro-text);
    line-height: 1.5;
    font-weight: 700;
}

.rk-qa-highlight {
    color: var(--rk-intro-blue);
    font-size: 18px;
    font-weight: 900;
}

/* Główny Tekst Wstępu */
.rk-intro-body {
    padding: 10px 50px 30px;
}

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

/* Interaktywny Nawigator (Agenda) */
.rk-agenda-wrapper {
    background: var(--rk-intro-gray);
    padding: 35px 50px;
    border-top: 1px solid var(--rk-intro-border);
}

.rk-agenda-title {
    font-size: 20px;
    font-weight: 900;
    color: var(--rk-intro-dark);
    margin: 0 0 20px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-agenda-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.rk-agenda-btn {
    background: #ffffff;
    border: 2px solid var(--rk-intro-border);
    padding: 18px 20px;
    border-radius: 12px;
    text-align: left;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-intro-dark);
}

.rk-agenda-btn:hover {
    border-color: #cbd5e1;
    background: #f1f5f9;
}

.rk-agenda-btn.active {
    border-color: var(--rk-intro-blue);
    background: var(--rk-intro-blue-light);
    color: var(--rk-intro-blue);
}

.rk-agenda-icon {
    width: 36px;
    height: 36px;
    background: #e2e8f0;
    color: var(--rk-intro-text);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

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

/* Treść Agendy (Natychmiastowe pokazanie) */
.rk-agenda-content {
    display: none;
    background: #ffffff;
    border: 1px solid var(--rk-intro-blue);
    border-radius: 12px;
    padding: 20px 25px;
    margin-top: 15px;
    font-size: 15px;
    line-height: 1.6;
    color: var(--rk-intro-text);
    grid-column: 1 / -1;
}

.rk-agenda-content.active {
    display: block;
}

/* Pasek z narzędziami */
.rk-tools-banner {
    background: var(--rk-intro-highlight);
    border-top: 1px solid #fde68a;
    padding: 20px 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    color: var(--rk-intro-gold);
    font-weight: 800;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.rk-inline-link {
    color: var(--rk-intro-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rk-inline-link:hover { color: var(--rk-intro-dark); }

/* RWD */
@media (max-width: 768px) {
    .rk-intro-hero { padding: 35px 20px; }
    .rk-qa-box { margin: -15px 20px 25px; padding: 20px; flex-direction: column; text-align: center; gap: 15px; }
    .rk-intro-body, .rk-agenda-wrapper, .rk-tools-banner { padding: 25px 20px; }
    .rk-agenda-grid { grid-template-columns: 1fr; }
    .rk-tools-banner { flex-direction: column; text-align: center; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-wstep",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Ile czasu nagrzewa się podłogówka? Szybka odpowiedź i inżynierskie fakty",
    "description": "Zrozumienie bezwładności cieplnej instalacji ogrzewania podłogowego. Szybka odpowiedź na temat czasu nagrzewania jastrychu i rezygnacja z nawyków z grzejników.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-wstep",
    "name": "Bazowe czasy nagrzewania i stabilizacji instalacji podłogowej",
    "description": "Referencyjne wskaźniki czasowe określające dynamikę układu wodnego ogrzewania płaszczyznowego oparte na wytycznych normy PN-EN 1264.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "ile czasu nagrzewa się podłogówka",
      "czym jest bezwładność cieplna w ogrzewaniu podłogowym",
      "norma obliczeń ogrzewania podłogowego en 1264",
      "najczęstsze błędy przy montażu ogrzewania podłogowego",
      "wodne ogrzewanie podłogowe"
    ],
    "measurementTechnique": "Szacunkowe przedziały czasowe osiągania komfortu cieplnego w relacji do normatywnych limitów temperatur (max 29°C na posadzce).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Czas do pierwszej odczuwalnej zmiany temperatury: 2 do 3 godzin.",
        "Czas do pełnej stabilizacji termicznej (jastrych 7cm): 6 do 10 godzin."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-wstep",
    "name": "Interaktywny Nawigator Artykułu",
    "description": "Zestawienie najważniejszych bloków merytorycznych z możliwością natychmiastowego podejrzenia kluczowych wniosków z poszczególnych sekcji.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-intro-module" id="wstep-podlogowka-app">
    
    <div class="rk-intro-hero">
        <h2>Ile czasu nagrzewa się podłogówka? Baza inżynierskich faktów</h2>
        <p class="rk-hook-text">Wybór wodnego ogrzewania podłogowego to rezygnacja z natychmiastowej reakcji znanej z grzejników. Brak ciepła &#8222;na żądanie&#8221; po przestawieniu termostatu często wywołuje ból, niepokój i frustrację inwestorów. Czas poznać fizykę budowli.</p>
    </div>

    <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.5" 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>
        <div class="rk-qa-content">
            <h3>Szybka Odpowiedź:</h3>
            <p>Czas nagrzewania standardowej podłogówki (jastrych cementowy 7 cm) wynosi od <span class="rk-qa-highlight">2 do 3 godzin</span> do momentu uzyskania pierwszej odczuwalnej zmiany, oraz od <span class="rk-qa-highlight">6 do 10 godzin</span> do pełnej stabilizacji termicznej pomieszczenia.</p>
        </div>
    </div>

    <div class="rk-intro-body">
        <p>Wpływ na ten czas reakcji mają cztery główne zmienne: <a href="https://projekt-ogrzewania.pl/czym-jest-bezwladnosc-cieplna-w-ogrzewaniu-podlogowym/" class="rk-inline-link">bezwładność cieplna</a> samej płyty grzewczej, opór cieplny dobranej okładziny wierzchniej (tzw. parametr R wyrażany w W/m²K), zoptymalizowany rozstaw rur oraz precyzyjna temperatura zasilania medium. Precyzyjne wyznaczenie dynamiki całego rozruchu instalacji bezwzględnie definiuje <a href="https://projekt-ogrzewania.pl/norma-obliczen-ogrzewania-podlogowego-en-1264/" class="rk-inline-link">norma PN-EN 1264</a>, która określa m.in. graniczne, zdrowe temperatury powierzchni podłogi (np. 29°C dla strefy stałego przebywania ludzi).</p>
        
        <p>Zrozumienie mechaniki przepływu ciepła pozwala zoptymalizować <a href="https://projekt-ogrzewania.pl/krzywa-grzewcza-w-ogrzewaniu-podlogowym/" class="rk-inline-link">krzywą grzewczą</a>, drastycznie obniżyć koszty eksploatacji <a href="https://projekt-ogrzewania.pl/pompa-ciepla/" class="rk-inline-link">pompy ciepła</a> lub <a href="https://projekt-ogrzewania.pl/kociol-gazowy/" class="rk-inline-link">nowoczesnego kotła gazowego</a>, oraz uniknąć niedogrzania budynku podczas nagłych, silnych zmian pogodowych.</p>
    </div>

    <div class="rk-agenda-wrapper">
        <h3 class="rk-agenda-title">
            <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>
            Co znajdziesz w tym artykule?
        </h3>
        
        <div class="rk-agenda-grid">
            <button class="rk-agenda-btn active" data-target="info-1">
                <div class="rk-agenda-icon">1</div>
                Wpływ grubości jastrychu i okładzin
            </button>
            <button class="rk-agenda-btn" data-target="info-2">
                <div class="rk-agenda-icon">2</div>
                Nocna redukcja temperatury i błędy
            </button>
            <button class="rk-agenda-btn" data-target="info-3">
                <div class="rk-agenda-icon">3</div>
                Konsekwencje złego rozstawu rur
            </button>
            <button class="rk-agenda-btn" data-target="info-4">
                <div class="rk-agenda-icon">4</div>
                Porównanie: System mokry vs suchy
            </button>
            
            <div class="rk-agenda-content active" id="info-1">
                <strong>Omawiamy bezwładność masy:</strong> Zobaczysz, dlaczego każdy dodatkowy centymetr betonu ponad rurą wydłuża czas nagrzewania, oraz dowiesz się, jak panele i podkłady blokują przepływ energii do pokoju.
            </div>
            <div class="rk-agenda-content" id="info-2">
                <strong>Niszczenie wskaźnika COP:</strong> Wyjaśniamy, dlaczego całkowite wyłączanie podłogówki na noc zmusza pompę ciepła do pracy na wysokich parametrach, generując potężne koszty zamiast oszczędności.
            </div>
            <div class="rk-agenda-content" id="info-3">
                <strong>Tzw. Ząb termiczny:</strong> Prezentujemy skutki hydrauliczne układania rur &#8222;na oko&#8221; (np. stałe 15 cm) przy oknach tarasowych bez odpowiednich obliczeń inżynierskich OZC.
            </div>
            <div class="rk-agenda-content" id="info-4">
                <strong>Alternatywy dla drewnianych stropów:</strong> Wskazujemy różnice techniczne i drastyczne skrócenie czasu reakcji (do kilkudziesięciu minut) przy zastosowaniu systemów lekkich (zabudowy suchej).
            </div>
        </div>
    </div>

    <div class="rk-tools-banner">
        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>
        <span>W dalszej części artykułu znajdziesz zaawansowane symulatory oraz interaktywne kalkulatory czasów nagrzewania!</span>
    </div>

</div>

<script>
// Czysty i bezpieczny kod JS, bez znaków &&
(function() {
    function initIntroAgenda() {
        var app = document.getElementById('wstep-podlogowka-app');
        if (!app) return;

        var btns = app.querySelectorAll('.rk-agenda-btn');
        var contents = app.querySelectorAll('.rk-agenda-content');

        for (var i = 0; i < btns.length; i++) {
            btns[i].addEventListener('click', function() {
                var targetId = this.getAttribute('data-target');

                // Zabezpieczenie przed "zamykaniem" wybranego elementu na mobile
                if (window.innerWidth <= 768) {
                    if (this.classList.contains('active')) {
                        return;
                    }
                }

                // Reset aktywności
                for (var j = 0; j < btns.length; j++) {
                    btns[j].classList.remove('active');
                }
                for (var k = 0; k < contents.length; k++) {
                    contents[k].classList.remove('active');
                }

                // Aktywacja bieżącego i przeniesienie pod nim kontenera (symulacja zachowania akordeonu)
                this.classList.add('active');
                var activeContent = document.getElementById(targetId);
                
                if (activeContent) {
                    activeContent.classList.add('active');
                    // Przenieś element z treścią dokładnie pod aktualnie kliknięty przycisk
                    this.parentNode.insertBefore(activeContent, this.nextSibling);
                }
            });
        }
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initIntroAgenda);
    } else {
        initIntroAgenda();
    }
})();
</script>



<style>
:root {
    --rk-shock-dark: #0f172a;
    --rk-shock-blue: #0284c7;
    --rk-shock-bg: #ffffff;
    --rk-shock-gray: #f8fafc;
    --rk-shock-border: #e2e8f0;
    --rk-shock-text: #334155;
    
    /* Kolory Statusów */
    --rk-safe-color: #10b981;
    --rk-safe-bg: #ecfdf5;
    --rk-warn-color: #f59e0b;
    --rk-warn-bg: #fffbeb;
    --rk-crit-color: #ef4444;
    --rk-crit-bg: #fef2f2;
}

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

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

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

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

/* Symulator - Układ Liniowy */
.rk-shock-simulator {
    padding: 40px 50px;
    background: var(--rk-shock-gray);
    display: flex;
    flex-direction: column;
    align-items: center;
    border-bottom: 1px solid var(--rk-shock-border);
}

.rk-shock-controls {
    width: 100%;
    max-width: 650px;
    background: #ffffff;
    padding: 30px 40px;
    border-radius: 16px;
    border: 1px solid var(--rk-shock-border);
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.03);
    margin-bottom: 30px;
}

.rk-shock-label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.rk-shock-label {
    font-size: 16px;
    font-weight: 800;
    color: var(--rk-shock-dark);
}

.rk-shock-val-display {
    font-size: 28px;
    font-weight: 900;
    color: var(--rk-shock-blue);
    background: #f0f9ff;
    padding: 6px 16px;
    border-radius: 10px;
    font-family: monospace;
}

/* Suwak Temperatury */
input[type=range].rk-shock-range {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
}
input[type=range].rk-shock-range:focus { outline: none; }
input[type=range].rk-shock-range::-webkit-slider-runnable-track {
    width: 100%; height: 12px; cursor: pointer;
    background: linear-gradient(90deg, var(--rk-safe-color) 0%, var(--rk-warn-color) 50%, var(--rk-crit-color) 100%);
    border-radius: 6px;
}
input[type=range].rk-shock-range::-webkit-slider-thumb {
    height: 32px; width: 32px; border-radius: 50%;
    background: #ffffff; cursor: pointer;
    -webkit-appearance: none; margin-top: -10px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    border: 5px solid var(--rk-shock-dark);
    transition: transform 0.1s;
}
input[type=range].rk-shock-range::-webkit-slider-thumb:hover {
    transform: scale(1.15);
}

/* Wizualizacja SVG i Status */
.rk-shock-visual {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 30px;
    align-items: center;
}

.rk-svg-box {
    background: #ffffff;
    border: 1px solid var(--rk-shock-border);
    border-radius: 16px;
    padding: 25px;
    box-shadow: 0 8px 16px -4px rgba(0,0,0,0.05);
    text-align: center;
    position: relative;
}

.rk-status-panel {
    background: #ffffff;
    border: 2px solid var(--rk-safe-color);
    border-radius: 16px;
    padding: 30px;
    transition: all 0.3s;
}

.rk-status-head {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.rk-status-desc {
    font-size: 15px;
    line-height: 1.6;
    font-weight: 600;
}

.rk-stress-badge {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 8px;
    font-family: monospace;
    font-size: 14px;
    font-weight: 800;
    margin-top: 15px;
}

/* Pęknięcia SVG (Animowane przez JS) */
.svg-crack {
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
    transition: stroke-dashoffset 0.5s ease-out, stroke 0.3s;
}

/* Treść Tekstowa */
.rk-shock-content {
    padding: 40px 50px;
}

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

.rk-shock-content p:last-child { margin: 0; }

.rk-shock-alert {
    background: var(--rk-crit-bg);
    border-left: 4px solid var(--rk-crit-color);
    padding: 25px 30px;
    border-radius: 0 12px 12px 0;
    margin: 30px 0;
}

.rk-shock-alert strong {
    display: block;
    color: #991b1b;
    font-size: 18px;
    margin-bottom: 8px;
}

.rk-tech-box {
    background: #f1f5f9;
    border: 1px solid #cbd5e1;
    padding: 15px 20px;
    border-radius: 10px;
    font-family: monospace;
    font-weight: 700;
    color: var(--rk-shock-blue);
    text-align: center;
    margin: 20px 0;
    font-size: 15px;
}

.rk-inline-link {
    color: var(--rk-shock-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rk-inline-link:hover { color: var(--rk-shock-dark); }

/* RWD */
@media (max-width: 768px) {
    .rk-shock-header, .rk-shock-simulator, .rk-shock-content { padding: 30px 20px; }
    .rk-shock-visual { grid-template-columns: 1fr; gap: 20px; }
    .rk-shock-controls { padding: 25px 20px; }
    .rk-shock-label-row { flex-direction: column; gap: 15px; text-align: center; }
    .rk-status-panel { padding: 20px; }
    .rk-shock-alert { padding: 20px; margin: 25px 0; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-pierwsze-uruchomienie",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Ile czasu nagrzewa się podłogówka po pierwszym włączeniu na początku sezonu grzewczego?",
    "description": "Dlaczego puszczenie 50°C na zimną wylewkę to błąd? Wyjaśnienie normy PN-EN 1264-4, procedury wygrzewania i szoku termicznego betonu.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-wygrzewanie",
    "name": "Normatywny protokół wygrzewania wylewki grzewczej",
    "description": "Zestawienie dopuszczalnych temperatur zasilania w pierwszych dobach rozruchu instalacji płaszczyznowej wg PN-EN 1264-4.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "norma obliczeń ogrzewania podłogowego en 1264",
      "wylewka betonowa na ogrzewanie podłogowe",
      "próba szczelności ogrzewania podłogowego",
      "najczęstsze błędy przy montażu ogrzewania podłogowego",
      "harmonogram wygrzewania wylewki"
    ],
    "measurementTechnique": "Szacowanie naprężeń ścinających wewnątrz struktury jastrychu (max 2.2 MPa dla betonu C20/25) na podstawie gwałtownego przyrostu temperatury.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Doba 1-3: Stała temperatura zasilania 20°C.",
        "Doba 4+: Stopniowy wzrost temperatury o max 5°C na dobę aż do wartości projektowej."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-szok-termiczny",
    "name": "Symulator Szoku Termicznego Jastrychu",
    "description": "Interaktywny panel demonstrujący ryzyko strukturalnego zniszczenia wylewki betonowej w przypadku przekroczenia zaleceń temperaturowych na etapie rozruchu.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-shock-module" id="szok-termiczny-app">
    
    <div class="rk-shock-header">
        <h2>Ile czasu nagrzewa się podłogówka po pierwszym włączeniu?</h2>
        <p>Próba szybkiego wygrzania zimnego domu to najprostsza droga do zniszczenia posadzki. Sprawdź, jak reaguje beton na szok termiczny.</p>
    </div>

    <div class="rk-shock-simulator">
        
        <div class="rk-shock-controls">
            <div class="rk-shock-label-row">
                <span class="rk-shock-label">Temperatura zasilania na start:</span>
                <span class="rk-shock-val-display"><span id="rk-out-temp">20</span> °C</span>
            </div>
            <input type="range" id="rk-in-temp" class="rk-shock-range" min="15" max="55" step="1" value="20">
            <div style="display:flex; justify-content:space-between; font-size:12px; color:#64748b; font-weight:700; margin-top:10px;">
                <span>15°C</span>
                <span>Normatywne 20°C</span>
                <span>Krytyczne 55°C</span>
            </div>
        </div>

        <div class="rk-shock-visual">
            <div class="rk-svg-box">
                <svg viewBox="0 0 200 150" width="100%" height="100%">
                    <rect x="20" y="20" width="160" height="110" fill="#e2e8f0" rx="8" id="rk-svg-bg"/>
                    
                    <circle cx="100" cy="75" r="15" fill="none" stroke="#64748b" stroke-width="6"/>
                    <circle cx="100" cy="75" r="10" fill="#38bdf8" id="rk-svg-water"/>
                    
                    <circle cx="100" cy="75" r="35" fill="none" stroke="#ef4444" stroke-width="2" opacity="0" id="rk-svg-wave" class="heat-wave"/>
                    
                    <path d="M 100 50 L 80 20 M 110 60 L 140 20 M 85 90 L 40 110 M 115 90 L 160 120" 
                          fill="none" stroke="#b91c1c" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="svg-crack" id="rk-svg-crack"/>
                </svg>
            </div>

            <div class="rk-status-panel" id="rk-status-box">
                <div class="rk-status-head" id="rk-status-head">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><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>
                    Zgodnie z normą
                </div>
                <div class="rk-status-desc" id="rk-status-desc">
                    Bezpieczny rozruch. Beton stopniowo absorbuje energię. Brak ryzyka uszkodzeń strukturalnych.
                </div>
                <div class="rk-stress-badge" id="rk-stress-badge" style="background: #d1fae5; color: #065f46;">Naprężenia: ~0.5 MPa (Bezpieczne)</div>
            </div>
        </div>

    </div>

    <div class="rk-shock-content">
        <p>Pierwsze, technologiczne uruchomienie zimnej instalacji (po okresie letnim lub po <a href="https://projekt-ogrzewania.pl/wylewka-betonowa-na-ogrzewanie-podlogowe/" class="rk-inline-link">wykonaniu wylewek betonowych</a>) trwa z reguły <strong>od 3 do 7 dni dla jastrychu anhydrytowego</strong> oraz <strong>od 7 do 14 dni dla jastrychu cementowego</strong>.</p>
        
        <p>Wynika to bezpośrednio z procedury wygrzewania płyty grzewczej określonej w <a href="https://projekt-ogrzewania.pl/norma-obliczen-ogrzewania-podlogowego-en-1264/" class="rk-inline-link">normie PN-EN 1264-4</a>. Przepisy te kategorycznie zabraniają gwałtownego podnoszenia temperatury medium, aby uniknąć wewnętrznych naprężeń ścinających betonu.</p>

        <div class="rk-tech-box">
            [Dzień 1-3: Stałe 20°C] ──> [Dzień 4: 25°C] ──> [Dzień 5: 30°C] ──> [Dzień 6: 35°C (Moc projektowa)]
        </div>

        <div class="rk-shock-alert">
            <strong>Główny błąd niecierpliwych inwestorów!</strong>
            Ból inwestorów wynika z próby wymuszenia szybkiego startu układu na początku sezonu. Ustawiają na rozdzielaczu temperaturę zasilania rzędu 50°C, wprowadzając potężny szok termiczny do zimnej wylewki.
        </div>

        <p>Dla standardowego betonu klasy C20/25 wytrzymałość na rozciąganie przy zginaniu (f_ctm) wynosi <strong>zaledwie 2,2 MPa</strong>. Gwałtowny skok temperatury generuje naprężenia fizycznie rozrywające tę strukturę. Konsekwencją jest destrukcja jastrychu, zerwanie połączenia adhezyjnego między rurą PEX a betonem oraz głośne pękanie płytek ceramicznych.</p>

        <p>Powód tak długiego, wymaganego czasu rozruchu to czysta fizyka – konieczność dostarczenia potężnej ilości energii do "martwej" masy. Należy pamiętać, że po prawidłowo wykonanej <a href="https://projekt-ogrzewania.pl/proba-szczelnosci-ogrzewania-podlogowego/" class="rk-inline-link">próbie szczelności ogrzewania podłogowego</a>, wylewka o grubości 7 cm na powierzchni zaledwie 100 m² waży blisko <strong>15 000 kg</strong> i musi zmienić swoją temperaturę o kilkanaście stopni Kelwina.</p>
    </div>

</div>

<script>
(function() {
    function initShockSim() {
        if(!document.getElementById('szok-termiczny-app')) return;

        const slider = document.getElementById('rk-in-temp');
        const outTemp = document.getElementById('rk-out-temp');
        
        // Elementy SVG
        const waterSVG = document.getElementById('rk-svg-water');
        const bgSVG = document.getElementById('rk-svg-bg');
        const waveSVG = document.getElementById('rk-svg-wave');
        const crackSVG = document.getElementById('rk-svg-crack');
        
        // Elementy Statusu
        const statusBox = document.getElementById('rk-status-box');
        const statusHead = document.getElementById('rk-status-head');
        const statusDesc = document.getElementById('rk-status-desc');
        const stressBadge = document.getElementById('rk-stress-badge');

        function updateShockVisuals() {
            // Bezpieczne pobranie wartości
            const temp = parseInt(slider.value, 10) || 20;
            outTemp.textContent = temp;

            // Logika stanów - używamy zagnieżdżonych bezpiecznych IF'ów (bez ampersandów)
            if (temp <= 22) {
                // STAN: ZIELONY (Norma)
                waterSVG.setAttribute('fill', '#38bdf8'); // Zimna woda
                bgSVG.setAttribute('fill', '#e2e8f0');
                waveSVG.setAttribute('opacity', '0');
                crackSVG.style.strokeDashoffset = '100'; // Ukryte pęknięcia

                statusBox.style.borderColor = 'var(--rk-safe-color)';
                statusBox.style.background = 'var(--rk-shock-bg)';
                
                statusHead.innerHTML = '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--rk-safe-color)" stroke-width="2.5"><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> Zgodnie z normą';
                statusHead.style.color = 'var(--rk-safe-color)';
                statusDesc.textContent = "Bezpieczny rozruch wg EN 1264. Beton stopniowo absorbuje energię. Brak ryzyka uszkodzeń strukturalnych.";
                
                stressBadge.style.background = 'var(--rk-safe-bg)';
                stressBadge.style.color = '#065f46';
                stressBadge.textContent = "Naprężenia: ~0.5 MPa (Bezpieczne)";

            } else {
                if (temp <= 35) {
                    // STAN: ŻÓŁTY (Ostrzeżenie)
                    waterSVG.setAttribute('fill', '#f59e0b'); // Ciepła woda
                    bgSVG.setAttribute('fill', '#fef3c7');
                    
                    waveSVG.setAttribute('opacity', '0.5');
                    waveSVG.setAttribute('stroke', '#f59e0b');
                    
                    crackSVG.style.strokeDashoffset = '70'; // Lekkie mikropęknięcia

                    statusBox.style.borderColor = 'var(--rk-warn-color)';
                    statusBox.style.background = 'var(--rk-warn-bg)';
                    
                    statusHead.innerHTML = '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--rk-warn-color)" stroke-width="2.5"><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> Ryzyko mikropęknięć';
                    statusHead.style.color = '#b45309';
                    statusDesc.textContent = "Przekroczony gradient narostu temperatury. Możliwe miejscowe osłabienie adhezji rury PEX.";
                    
                    stressBadge.style.background = '#fef08a';
                    stressBadge.style.color = '#92400e';
                    stressBadge.textContent = "Naprężenia: ~1.8 MPa (Graniczne)";

                } else {
                    // STAN: CZERWONY (Krytyczny Szok Termiczny)
                    waterSVG.setAttribute('fill', '#ef4444'); // Gorąca woda
                    bgSVG.setAttribute('fill', '#fee2e2');
                    
                    waveSVG.setAttribute('opacity', '1');
                    waveSVG.setAttribute('stroke', '#ef4444');
                    
                    crackSVG.style.strokeDashoffset = '0'; // Pełne pęknięcia

                    statusBox.style.borderColor = 'var(--rk-crit-color)';
                    statusBox.style.background = 'var(--rk-crit-bg)';
                    
                    statusHead.innerHTML = '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="var(--rk-crit-color)" stroke-width="2.5"><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> Szok Termiczny!';
                    statusHead.style.color = '#b91c1c';
                    statusDesc.textContent = "Beton ulega fizycznemu zerwaniu (spękania). Możliwe oderwanie ułożonych płytek ceramicznych.";
                    
                    stressBadge.style.background = '#fecaca';
                    stressBadge.style.color = '#991b1b';
                    stressBadge.textContent = "Naprężenia: > 3.0 MPa (Zniszczenie!)";
                }
            }
        }

        // Podwójne zabezpieczenie zdarzeń (kompatybilność z mobilkami)
        slider.addEventListener('input', updateShockVisuals);
        slider.addEventListener('change', updateShockVisuals);

        // Init
        updateShockVisuals();
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initShockSim);
    } else {
        initShockSim();
    }
})();
</script>



<style>
:root {
    --rk-mass-dark: #0f172a;
    --rk-mass-blue: #0284c7;
    --rk-mass-blue-light: #f0f9ff;
    --rk-mass-accent: #38bdf8;
    --rk-mass-gray: #f8fafc;
    --rk-mass-border: #e2e8f0;
    --rk-mass-text: #334155;
    
    /* Kolory Wylewek */
    --rk-cem-color: #64748b;
    --rk-cem-bg: #f1f5f9;
    --rk-anh-color: #d97706;
    --rk-anh-bg: #fffbeb;

    /* Kolory Alertów */
    --rk-alert-ok: #10b981;
    --rk-alert-warn: #f59e0b;
    --rk-alert-danger: #ef4444;
}

.rk-mass-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.1);
    border: 1px solid var(--rk-mass-border);
    overflow: hidden;
}

/* Nagłówek */
.rk-mass-header {
    background: var(--rk-mass-dark);
    padding: 40px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-mass-blue);
    position: relative;
    overflow: hidden;
}

.rk-mass-header::after {
    content: '';
    position: absolute;
    right: -20px; top: -20px;
    width: 150px; height: 150px;
    background: radial-gradient(circle, rgba(56, 189, 248, 0.2) 0%, transparent 70%);
}

.rk-mass-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 12px 0;
    line-height: 1.3;
    color: #ffffff;
    position: relative;
    z-index: 2;
}

.rk-mass-header p {
    font-size: 16px;
    color: #cbd5e1;
    margin: 0;
    position: relative;
    z-index: 2;
}

/* Symulator - Liniowy Układ (Jedna Kolumna) */
.rk-mass-ui {
    display: flex;
    flex-direction: column;
    background: var(--rk-mass-gray);
    border-bottom: 1px solid var(--rk-mass-border);
}

.rk-mass-controls {
    padding: 40px 50px 10px;
    max-width: 750px;
    margin: 0 auto;
    width: 100%;
}

/* Przełącznik Typu Wylewki */
.rk-screed-toggle {
    display: flex;
    background: #e2e8f0;
    padding: 8px;
    border-radius: 14px;
    margin-bottom: 30px;
    position: relative;
}

.rk-screed-btn {
    flex: 1;
    padding: 14px 10px;
    border: none;
    background: transparent;
    font-size: 16px;
    font-weight: 800;
    color: #64748b;
    cursor: pointer;
    border-radius: 10px;
    position: relative;
    z-index: 2;
    transition: color 0.3s;
}

.rk-screed-btn.active { color: var(--rk-mass-dark); }

.rk-screed-slider {
    position: absolute;
    top: 8px; bottom: 8px; left: 8px;
    width: calc(50% - 8px);
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.rk-screed-btn[data-type="cement"].active ~ .rk-screed-slider {
    transform: translateX(100%);
}

/* Suwak Grubości */
.rk-thick-group {
    background: #ffffff;
    padding: 25px 30px;
    border-radius: 16px;
    border: 1px solid var(--rk-mass-border);
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.02);
}

.rk-thick-label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    font-weight: 800;
    color: var(--rk-mass-dark);
    font-size: 16px;
}

.rk-thick-val {
    font-size: 26px;
    font-weight: 900;
    color: var(--rk-mass-blue);
    background: var(--rk-mass-blue-light);
    padding: 6px 16px;
    border-radius: 8px;
}

input[type=range].rk-thick-range {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
}
input[type=range].rk-thick-range:focus { outline: none; }
input[type=range].rk-thick-range::-webkit-slider-runnable-track {
    width: 100%; height: 10px; cursor: pointer;
    background: #cbd5e1; border-radius: 5px;
}
input[type=range].rk-thick-range::-webkit-slider-thumb {
    height: 30px; width: 30px; border-radius: 50%;
    background: var(--rk-mass-blue); cursor: pointer;
    -webkit-appearance: none; margin-top: -10px;
    box-shadow: 0 4px 12px rgba(2, 132, 199, 0.4);
    border: 4px solid #ffffff; transition: transform 0.1s;
}
input[type=range].rk-thick-range::-webkit-slider-thumb:hover {
    transform: scale(1.15);
}

/* Wizualizator Wyników (Pod suwakami) */
.rk-mass-visualizer {
    padding: 20px 50px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 800px;
    margin: 0 auto;
    width: 100%;
}

.rk-svg-container {
    width: 100%;
    max-width: 300px; /* Nieco powiększony SVG */
    background: #ffffff;
    border: 1px solid var(--rk-mass-border);
    border-radius: 16px;
    padding: 25px;
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.04);
    margin-bottom: 25px;
}

.rk-metrics-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    width: 100%;
}

.rk-metric-card {
    background: #ffffff;
    border: 1px solid var(--rk-mass-border);
    padding: 20px;
    border-radius: 16px;
    text-align: center;
    transition: border-color 0.3s;
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
}

.rk-metric-label {
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1px;
    color: var(--rk-mass-text);
    margin-bottom: 8px;
}

.rk-metric-value {
    font-size: 28px;
    font-weight: 900;
    color: var(--rk-mass-dark);
}

/* Status Alert */
.rk-status-banner {
    width: 100%;
    padding: 15px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 800;
    text-align: center;
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: all 0.3s;
}

.status-ok { background: #d1fae5; color: #065f46; border: 1px solid #6ee7b7; }
.status-warn { background: #fef3c7; color: #92400e; border: 1px solid #fcd34d; }
.status-danger { background: #fee2e2; color: #991b1b; border: 1px solid #fca5a5; }

/* Treść Tekstowa */
.rk-mass-content {
    padding: 40px 50px;
}

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

.rk-mass-content p:last-child { margin: 0; }

.rk-mass-alert {
    background: #fef2f2;
    border-left: 4px solid var(--rk-alert-danger);
    padding: 20px 25px;
    border-radius: 0 12px 12px 0;
    margin: 25px 0;
}

.rk-mass-alert strong {
    display: block;
    color: #991b1b;
    font-size: 18px;
    margin-bottom: 8px;
}

.rk-inline-link {
    color: var(--rk-mass-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rk-inline-link:hover { color: var(--rk-mass-dark); }

/* RWD */
@media (max-width: 768px) {
    .rk-mass-header, .rk-mass-controls, .rk-mass-visualizer, .rk-mass-content { padding: 30px 20px; }
    .rk-metrics-grid { grid-template-columns: 1fr; gap: 15px; }
    .rk-screed-toggle { flex-direction: column; background: transparent; padding: 0; margin-bottom: 20px; }
    .rk-screed-slider { display: none; }
    .rk-screed-btn { background: #e2e8f0; border: 1px solid var(--rk-mass-border); margin-bottom: 10px; width: 100%; }
    .rk-screed-btn.active { background: #ffffff; border-color: var(--rk-mass-blue); box-shadow: 0 4px 10px rgba(0,0,0,0.05); }
    .rk-thick-group { padding: 20px 15px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-grubosc-wylewki",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Jak grubość wylewki jastrychowej wpływa na czas nagrzewania ogrzewania podłogowego?",
    "description": "Zrozum zjawisko bezwładności cieplnej. Sprawdź, dlaczego wylanie 12 cm betonu na podłogówkę to błąd, który wydłuża czas nagrzewania do kilkunastu godzin.",
    "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": "2025-12-29",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-grubosc",
    "name": "Wpływ grubości jastrychu na masę i czas nagrzewania",
    "description": "Tabela zależności pomiędzy rodzajem wylewki (anhydryt vs cement), jej grubością (w centymetrach) a czasem reakcji układu ogrzewania podłogowego.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "grubość wylewki betonowej na ogrzewanie podłogowe",
      "wylewka betonowa na ogrzewanie podłogowe",
      "wylewka na ogrzewanie podłogowe kompletny przewodnik",
      "czym jest bezwładność cieplna w ogrzewaniu podłogowym",
      "najczęstsze błędy przy montażu ogrzewania podłogowego"
    ],
    "measurementTechnique": "Algorytm oparty o normę PN-EN 1264, szacujący przyrost czasu nagrzewania (1.5-2h na każdy dodatkowy 1cm betonu powyżej rury grzewczej).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Jastrych anhydrytowy (60 mm): Czas nagrzewania 2-4 godz.",
        "Jastrych cementowy (75 mm): Czas nagrzewania 6-10 godz.",
        "Błąd wykonawczy (120 mm betonu): Czas nagrzewania 14-18 godz., masa 260 kg/m2."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-grubosc",
    "name": "Symulator Bezwładności Jastrychu",
    "description": "Interaktywne narzędzie obliczeniowe pozwalające wizualizować przyrost masy stropu i czasu opóźnienia hydraulicznego na skutek pogrubiania płyty grzewczej jastrychu.",
    "applicationCategory": "CalculatorApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-mass-module" id="grubosc-wylewki-app">
    
    <div class="rk-mass-header">
        <h2>Jak grubość wylewki wpływa na czas nagrzewania?</h2>
        <p>Każdy dodatkowy centymetr betonu to dodatkowe tony masy do ogrzania. Sprawdź, czy Twój wykonawca nie funduje Ci separatora termicznego.</p>
    </div>

    <div class="rk-mass-ui">
        
        <div class="rk-mass-controls">
            <div class="rk-screed-toggle">
                <button class="rk-screed-btn active" data-type="anhydryt">Anhydryt (Płynny)</button>
                <button class="rk-screed-btn" data-type="cement">Cementowy (Tradycyjny)</button>
                <div class="rk-screed-slider"></div>
            </div>

            <div class="rk-thick-group">
                <div class="rk-thick-label">
                    <span>Grubość Wylewki (Całkowita)</span>
                    <span class="rk-thick-val"><span id="rk-val-thick">6.0</span> cm</span>
                </div>
                <input type="range" id="rk-in-thick" class="rk-thick-range" min="3.5" max="12.0" step="0.5" value="6.0">
                <div style="font-size:13px; color:#64748b; margin-top:12px; font-weight:600; text-align:center;">
                    Zgodnie z EN 1264: min. 35mm nad rurą (Anhydryt) / min. 45mm nad rurą (Cement).
                </div>
            </div>
        </div>

        <div class="rk-mass-visualizer">
            
            <div class="rk-svg-container">
                <svg viewBox="0 0 200 160" width="100%" height="100%">
                    <circle cx="100" cy="130" r="10" fill="none" stroke="#ef4444" stroke-width="4"></circle>
                    <circle cx="100" cy="130" r="3" fill="#ef4444"></circle>
                    
                    <rect id="rk-svg-screed" x="40" y="80" width="120" height="70" fill="#d97706" opacity="0.4" rx="4"></rect>
                    
                    <line id="rk-svg-line" x1="20" y1="80" x2="180" y2="80" stroke="#0f172a" stroke-width="2" stroke-dasharray="4"></line>
                </svg>
            </div>

            <div class="rk-metrics-grid">
                <div class="rk-metric-card" id="rk-card-mass">
                    <div class="rk-metric-label">Ciężar płyty</div>
                    <div class="rk-metric-value"><span id="rk-out-mass">126</span> kg/m²</div>
                </div>
                <div class="rk-metric-card" id="rk-card-time">
                    <div class="rk-metric-label">Czas reakcji</div>
                    <div class="rk-metric-value"><span id="rk-out-time">3.0</span> godz.</div>
                </div>
            </div>

            <div id="rk-status-alert" class="rk-status-banner status-ok">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>
                <span id="rk-status-text">Grubość optymalna</span>
            </div>

        </div>
    </div>

    <div class="rk-mass-content">
        <p>Grubość wylewki bezpośrednio warunkuje czas nagrzewania podłogówki. Zasada jest prosta: każdy dodatkowy 1 cm jastrychu cementowego powyżej rury wydłuża czas reakcji układu o około 1,5 do 2 godzin. <a href="https://projekt-ogrzewania.pl/wylewka-na-ogrzewanie-podlogowe-kompletny-przewodnik/" class="rk-inline-link">Kompletny przewodnik po wylewkach</a> oraz <a href="https://projekt-ogrzewania.pl/norma-obliczen-ogrzewania-podlogowego-en-1264/" class="rk-inline-link">norma EN 1264</a> definiują jasno: minimalna grubość wylewki nad zewnętrzną średnicą rury wynosi 35 mm dla jastrychów anhydrytowych (płynnych) oraz 45 mm dla jastrychów cementowych.</p>
        
        <p>Optymalna łączna <a href="https://projekt-ogrzewania.pl/grubosc-wylewki-betonowej-na-ogrzewanie-podlogowe/" class="rk-inline-link">grubość wylewki betonowej na ogrzewanie podłogowe</a> wynosi około 50-60 mm dla anhydrytu i 65-80 mm dla cementu. To wystarczy, aby zbudować stabilną płytę nośną bez nadmiernego zwiększania <a href="https://projekt-ogrzewania.pl/czym-jest-bezwladnosc-cieplna-w-ogrzewaniu-podlogowym/" class="rk-inline-link">bezwładności cieplnej</a>.</p>

        <div class="rk-mass-alert">
            <strong>Najczęstszy błąd na budowie!</strong>
            Błędem wykonawczym, który drastycznie pogarsza dynamikę układu, jest wylanie zbyt grubej warstwy betonu (np. 10-12 cm z powodu krzywo wykonanych stropów, ukrywania kabli lub braku niwelacji podłoża). Taka konstrukcja staje się potężnym separatorem termicznym o gigantycznej bezwładności. Masa 1 m² jastrychu cementowego przy 12 cm wzrasta do 260 kg!
        </div>

        <p>Taki układ nagrzewa się nawet 14-18 godzin, co uniemożliwia jakąkolwiek automatyczną regulację temperatury w cyklu dobowym. To jedno z <a href="https://projekt-ogrzewania.pl/najczestsze-bledy-przy-montazu-ogrzewania-podlogowego-i-jak-ich-uniknac/" class="rk-inline-link">najczęstszych błędów przy montażu ogrzewania podłogowego</a>. Ponadto, tradycyjna gruba <a href="https://projekt-ogrzewania.pl/wylewka-betonowa-na-ogrzewanie-podlogowe/" class="rk-inline-link">wylewka betonowa</a> posiada gorszy współczynnik przewodzenia ciepła (ok. 1,4 W/(m·K)) w porównaniu do homogenicznego, płynnego jastrychu anhydrytowego (do 2,0 W/(m·K)), co generuje dodatkowe, bolesne opóźnienia w transporcie energii.</p>
    </div>

</div>

<script>
(function() {
    function initScreedSim() {
        if(!document.getElementById('grubosc-wylewki-app')) return;

        const btns = document.querySelectorAll('#grubosc-wylewki-app .rk-screed-btn');
        const slider = document.getElementById('rk-in-thick');
        const valThick = document.getElementById('rk-val-thick');
        
        const outMass = document.getElementById('rk-out-mass');
        const outTime = document.getElementById('rk-out-time');
        
        const svgRect = document.getElementById('rk-svg-screed');
        const svgLine = document.getElementById('rk-svg-line');
        const statusBanner = document.getElementById('rk-status-alert');
        const statusText = document.getElementById('rk-status-text');

        let currentType = 'anhydryt'; // anhydryt | cement

        // Parametry wyjściowe do obliczeń
        const params = {
            anhydryt: { density: 2100, minThick: 5.5, maxOk: 6.5, color: '#d97706', baseTime: 3.0, baseThick: 6.0, timeFactor: 1.2 },
            cement: { density: 2200, minThick: 6.5, maxOk: 8.0, color: '#64748b', baseTime: 8.0, baseThick: 7.0, timeFactor: 1.75 }
        };

        function updateVisuals() {
            // Bezpieczne przypisanie wartości
            const thickCm = parseFloat(slider.value) || 6.0;
            valThick.textContent = thickCm.toFixed(1);

            const data = params[currentType];

            // 1. Obliczanie masy
            const mass = (thickCm / 100) * data.density;
            outMass.textContent = Math.round(mass);

            // 2. Szacowanie czasu reakcji
            let timeDelay = data.baseTime + ((thickCm - data.baseThick) * data.timeFactor);
            if (timeDelay < 1) timeDelay = 1; 
            outTime.textContent = timeDelay.toFixed(1);

            // 3. Wizualizacja SVG
            const rectHeight = thickCm * 10;
            const rectY = 145 - rectHeight; 
            
            svgRect.setAttribute('height', rectHeight);
            svgRect.setAttribute('y', rectY);
            svgRect.setAttribute('fill', data.color);
            svgLine.setAttribute('y1', rectY);
            svgLine.setAttribute('y2', rectY);

            // 4. Ocena Logiczna (Statusy bez problematycznych operatorów logicznych)
            statusBanner.className = 'rk-status-banner'; // Reset

            if (thickCm < data.minThick) {
                if (currentType === 'cement') {
                    statusBanner.classList.add('status-danger');
                    statusText.textContent = "BŁĄD: Zbyt cienko! Ryzyko pękania (min. 6.5 cm)";
                } else {
                    statusBanner.classList.add('status-warn');
                    statusText.textContent = "UWAGA: Bardzo cienko. Wymaga specjalnej chemii.";
                }
            } else {
                if (thickCm <= data.maxOk) {
                    statusBanner.classList.add('status-ok');
                    statusText.textContent = "IDEALNIE: Optymalna dynamika i masa.";
                } else {
                    if (thickCm < 9.5) {
                        statusBanner.classList.add('status-warn');
                        statusText.textContent = "UWAGA: Podwyższona bezwładność cieplna.";
                    } else {
                        statusBanner.classList.add('status-danger');
                        statusText.textContent = "KATASTROFA: Potężny separator termiczny!";
                    }
                }
            }
        }

        // Zabezpieczony event listener
        slider.addEventListener('input', updateVisuals);
        slider.addEventListener('change', updateVisuals);

        btns.forEach(btn => {
            btn.addEventListener('click', function() {
                btns.forEach(b => b.classList.remove('active'));
                this.classList.add('active');
                currentType = this.getAttribute('data-type');
                
                // Zabezpieczona logika przełączania grubości wg norm bez znaku ampersand
                if (currentType === 'cement') {
                    if (parseFloat(slider.value) < 6.5) {
                        slider.value = 7.0;
                    }
                } else {
                    if (currentType === 'anhydryt') {
                        if (parseFloat(slider.value) > 7.0) {
                            slider.value = 6.0;
                        }
                    }
                }
                
                updateVisuals();
            });
        });

        // Init
        updateVisuals();
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initScreedSim);
    } else {
        initScreedSim();
    }
})();
</script>



<style>
:root {
    --rk-night-dark: #0f172a;
    --rk-night-blue: #0284c7;
    --rk-night-bg: #ffffff;
    --rk-night-gray: #f8fafc;
    --rk-night-border: #e2e8f0;
    --rk-night-text: #334155;
    
    /* Status Colors */
    --rk-status-green: #10b981;
    --rk-status-green-bg: #ecfdf5;
    --rk-status-orange: #f59e0b;
    --rk-status-orange-bg: #fffbeb;
    --rk-status-red: #ef4444;
    --rk-status-red-bg: #fef2f2;
}

.rk-night-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-night-bg);
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.15);
    border: 1px solid var(--rk-night-dark);
    overflow: hidden;
}

/* Nagłówek */
.rk-night-header {
    background: radial-gradient(circle at top right, #1e293b 0%, var(--rk-night-dark) 100%);
    padding: 45px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-night-blue);
    position: relative;
}

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

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

/* Symulator / Dashboard */
.rk-night-dashboard {
    padding: 40px 50px;
    background: var(--rk-night-gray);
    border-bottom: 1px solid var(--rk-night-border);
}

.rk-slider-container {
    background: var(--rk-night-bg);
    padding: 35px 40px;
    border-radius: 16px;
    border: 1px solid var(--rk-night-border);
    margin-bottom: 30px;
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.03);
}

.rk-slider-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.rk-slider-title {
    font-size: 18px;
    font-weight: 800;
    color: var(--rk-night-dark);
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-slider-title svg { color: var(--rk-night-blue); }

.rk-slider-val {
    font-size: 24px;
    font-weight: 900;
    color: var(--rk-night-dark);
    background: #f1f5f9;
    padding: 5px 15px;
    border-radius: 8px;
    font-family: monospace;
}

/* Wygląd Suwaka */
input[type=range].rk-night-range {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
}

input[type=range].rk-night-range:focus { outline: none; }

input[type=range].rk-night-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 10px;
    cursor: pointer;
    background: linear-gradient(90deg, var(--rk-status-green) 0%, var(--rk-status-orange) 50%, var(--rk-status-red) 100%);
    border-radius: 5px;
}

input[type=range].rk-night-range::-webkit-slider-thumb {
    height: 28px;
    width: 28px;
    border-radius: 50%;
    background: var(--rk-night-bg);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -9px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    border: 4px solid var(--rk-night-dark);
    transition: transform 0.1s;
}

input[type=range].rk-night-range::-webkit-slider-thumb:hover {
    transform: scale(1.15);
}

/* HUD Wyników */
.rk-night-hud {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.rk-hud-box {
    background: var(--rk-night-bg);
    border: 2px solid var(--rk-night-border);
    border-radius: 16px;
    padding: 25px 20px;
    text-align: center;
    transition: all 0.3s ease;
}

.rk-hud-box.status-green { border-color: var(--rk-status-green); background: var(--rk-status-green-bg); }
.rk-hud-box.status-orange { border-color: var(--rk-status-orange); background: var(--rk-status-orange-bg); }
.rk-hud-box.status-red { border-color: var(--rk-status-red); background: var(--rk-status-red-bg); }

.rk-hud-label {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 800;
    color: var(--rk-night-text);
    margin-bottom: 10px;
}

.rk-hud-val {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-night-dark);
}

.rk-hud-desc {
    font-size: 12px;
    font-weight: 700;
    margin-top: 8px;
    padding: 4px 8px;
    border-radius: 6px;
    display: inline-block;
}

.status-green .rk-hud-val { color: #047857; }
.status-green .rk-hud-desc { background: #d1fae5; color: #065f46; }

.status-orange .rk-hud-val { color: #b45309; }
.status-orange .rk-hud-desc { background: #fef3c7; color: #92400e; }

.status-red .rk-hud-val { color: #b91c1c; }
.status-red .rk-hud-desc { background: #fee2e2; color: #991b1b; }

/* Tekst / Treść */
.rk-night-content {
    padding: 40px 50px;
}

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

.rk-night-text p:last-child { margin: 0; }

.rk-night-h3 {
    font-size: 20px;
    font-weight: 800;
    color: var(--rk-night-dark);
    margin: 30px 0 15px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-night-h3 svg { color: var(--rk-night-blue); }

.rk-alert-banner {
    display: flex;
    gap: 15px;
    background: var(--rk-status-red-bg);
    border-left: 4px solid var(--rk-status-red);
    padding: 20px;
    border-radius: 0 12px 12px 0;
    margin: 25px 0;
}

.rk-alert-icon {
    color: var(--rk-status-red);
    flex-shrink: 0;
}

.rk-alert-text {
    font-size: 15px;
    line-height: 1.6;
    color: #7f1d1d;
    font-weight: 500;
}

.rk-alert-text strong { font-weight: 800; color: #991b1b; }

.rk-inline-link {
    color: var(--rk-night-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rk-inline-link:hover { color: var(--rk-night-dark); }

/* Mobile RWD */
@media (max-width: 768px) {
    .rk-night-header, .rk-night-dashboard, .rk-night-content { padding: 30px 20px; }
    .rk-slider-container { padding: 25px 20px; }
    .rk-hud-box { padding: 15px; }
    
    .rk-slider-header { flex-direction: column; gap: 15px; align-items: flex-start; }
    .rk-night-hud { grid-template-columns: 1fr; gap: 15px; }
    
    .rk-alert-banner { flex-direction: column; align-items: flex-start; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-redukcja-nocna",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Ile trwa nagrzewanie podłogówki po nocnym obniżeniu temperatury?",
    "description": "Dlaczego całkowite wyłączanie podłogówki na noc to błąd. Wyjaśnienie spadku wydajności COP pomp ciepła przy dużej bezwładności i skokach temperatury o 3 stopnie.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-redukcja",
    "name": "Zależność efektywności (COP) od skali nocnej redukcji temperatury",
    "description": "Zestawienie analityczne pokazujące drastyczny spadek współczynnika COP pompy ciepła w funkcji czasu nagrzewania i wielkości obniżenia temperatury na termostacie.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "czy warto montować sterowniki do ogrzewania podłogowego",
      "sterowanie strefowe ogrzewaniem czy warto",
      "krzywa grzewcza w ogrzewaniu podłogowym",
      "pompa ciepła",
      "redukcja nocna ogrzewanie podłogowe"
    ],
    "measurementTechnique": "Szacowanie czasu odzyskania komfortu cieplnego (delta T) w odniesieniu do punktu aktywacji grzałek elektrycznych w pompach ciepła.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Redukcja 0.5-1.0 st. C: Czas nagrzewu 1-3h, Optymalne COP 4.5.",
        "Redukcja 3.0 st. C: Czas nagrzewu 6-10h, Krytyczny spadek COP do 1.5, załączenie grzałek."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-redukcja",
    "name": "Symulator Sprawności COP a Redukcja Nocna",
    "description": "Interaktywny symulator uświadamiający błąd inwestorski polegający na głębokim obniżaniu temperatury w instalacjach płaszczyznowych. Wizualizuje straty finansowe.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-night-module" id="nocna-redukcja-app">
    
    <div class="rk-night-header">
        <h2>Ile trwa nagrzewanie podłogówki po nocnym obniżeniu temperatury?</h2>
        <p>Nawyki ze starych domów z grzejnikami to cichy zabójca sprawności nowoczesnych systemów. Zobacz, dlaczego wyłączanie podłogówki na noc niszczy Twój portfel.</p>
    </div>

    <div class="rk-night-dashboard">
        <div class="rk-slider-container">
            <div class="rk-slider-header">
                <div class="rk-slider-title">
                    <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="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
                    Ustaw nocną redukcję na termostacie
                </div>
                <div class="rk-slider-val"><span id="val-reduction">1.0</span> °C</div>
            </div>
            <input type="range" id="in-reduction" class="rk-night-range" min="0" max="3" step="0.5" value="1.0">
            <div style="display:flex; justify-content:space-between; font-size:12px; color:#64748b; font-weight:700; margin-top:8px;">
                <span>0°C (Stała)</span>
                <span>3°C (Nawyk Grzejnikowy)</span>
            </div>
        </div>

        <div class="rk-night-hud">
            <div class="rk-hud-box" id="hud-time">
                <div class="rk-hud-label">Czas powrotu do ciepła</div>
                <div class="rk-hud-val" id="out-time">1 - 3 godz.</div>
                <div class="rk-hud-desc" id="desc-time">W normie</div>
            </div>
            <div class="rk-hud-box" id="hud-cop">
                <div class="rk-hud-label">Sprawność Pompy (COP)</div>
                <div class="rk-hud-val" id="out-cop">4.0 - 4.5</div>
                <div class="rk-hud-desc" id="desc-cop">Wysoka energooszczędność</div>
            </div>
            <div class="rk-hud-box" id="hud-cost">
                <div class="rk-hud-label">Skutek Finansowy</div>
                <div class="rk-hud-val" id="out-cost">Optymalny</div>
                <div class="rk-hud-desc" id="desc-cost">Niskie rachunki</div>
            </div>
        </div>
    </div>

    <div class="rk-night-content">
        <div class="rk-night-text">
            <h3 class="rk-night-h3">
                <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                Zasada samoregulacji a czas opóźnienia
            </h3>
            <p>Czas potrzebny na podniesienie temperatury powietrza w pomieszczeniu o 2°C po nocnej redukcji wynosi <strong>od 4 do 8 godzin</strong>, w zależności od izolacyjności termicznej zewnętrznych przegród budynku. Zjawisko to wynika wprost z charakterystyki samoregulacji ogrzewania płaszczyznowego.</p>
            
            <p>Różnica temperatur między powierzchnią podłogi a samym powietrzem (tzw. Delta T) jest bardzo niewielka i wynosi zazwyczaj zaledwie od 3K do 5K. Gdy <a href="https://projekt-ogrzewania.pl/czy-warto-montowac-sterowniki-do-ogrzewania-podlogowego/" class="rk-inline-link">sterowniki do ogrzewania podłogowego</a> wyślą sygnał o godzinie 06:00, potężna masa jastrychu musi się nagrzać. Podłoga osiągnie wymaganą temperaturę powierzchniową dopiero około godziny 08:30, a samo powietrze dogrzeje się w okolicach południa.</p>

            <div class="rk-alert-banner">
                <div class="rk-alert-icon">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><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 class="rk-alert-text">
                    <strong>Kardynalny błąd inwestorski:</strong> Całkowite wyłączanie podłogówki na noc (np. o 22:00 i start o 06:00). Budynek drastycznie się wychładza, a ponowne nagrzanie betonowej płyty o masie kilkunastu ton wymaga uderzenia energii z maksymalną mocą szczytową.
                </div>
            </div>

            <h3 class="rk-night-h3">
                <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M12 2v20"></path><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                Zabijanie sprawności (COP) pompy ciepła
            </h3>
            <p>Aby szybko nadgonić stratę rzędu 2-3°C, <a href="https://projekt-ogrzewania.pl/pompa-ciepla/" class="rk-inline-link">pompa ciepła</a> zostaje zmuszona do gwałtownego podniesienia temperatury zasilania. Przechodzi w ekstremalnie nieefektywny zakres pracy, często uruchamiając zintegrowane grzałki elektryczne. Jej rewelacyjny współczynnik sprawności (COP) <strong>spada z 4.5 do zaledwie 1.5!</strong></p>

            <p>Koszt ponownego nagrzania wyziębionego układu znacznie przewyższa "rzekome" oszczędności uzyskane z przerwanej pracy nocnej. Prawidłowo ustawiona <a href="https://projekt-ogrzewania.pl/krzywa-grzewcza-w-ogrzewaniu-podlogowym/" class="rk-inline-link">krzywa grzewcza</a> dla tak dużej bezwładności dopuszcza bezpieczną, uzasadnioną ekonomicznie redukcję nocną <strong>maksymalnie w granicach 0,5°C do 1,0°C</strong>. Rozważając <a href="https://projekt-ogrzewania.pl/sterowanie-strefowe-ogrzewaniem-czy-warto/" class="rk-inline-link">sterowanie strefowe ogrzewaniem</a>, zawsze pamiętaj o płynności pracy – dom to nie grzejnik.</p>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const slider = document.getElementById('in-reduction');
    const valDisplay = document.getElementById('val-reduction');
    
    const hudTime = document.getElementById('hud-time');
    const outTime = document.getElementById('out-time');
    const descTime = document.getElementById('desc-time');
    
    const hudCop = document.getElementById('hud-cop');
    const outCop = document.getElementById('out-cop');
    const descCop = document.getElementById('desc-cop');
    
    const hudCost = document.getElementById('hud-cost');
    const outCost = document.getElementById('out-cost');
    const descCost = document.getElementById('desc-cost');

    function updateSimulation() {
        const val = parseFloat(slider.value);
        valDisplay.innerText = val.toFixed(1);

        // Resetowanie klas
        hudTime.className = 'rk-hud-box';
        hudCop.className = 'rk-hud-box';
        hudCost.className = 'rk-hud-box';

        // Bezpieczna logika bez symboli kolizyjnych (unikanie znaków większości/mniejszości i ampersandów gdy to możliwe, chociaż proste if-else są bezpieczne)
        if (val <= 1.0) {
            // STREFA ZIELONA
            hudTime.classList.add('status-green');
            outTime.innerText = "1 - 3 godz.";
            descTime.innerText = "Szybka reakcja";

            hudCop.classList.add('status-green');
            outCop.innerText = "4.0 - 4.5";
            descCop.innerText = "Praca optymalna sprężarki";

            hudCost.classList.add('status-green');
            outCost.innerText = "Niski koszt";
            descCost.innerText = "Ekonomiczna praca";
            
        } else {
            if (val <= 2.0) {
                // STREFA POMARAŃCZOWA
                hudTime.classList.add('status-orange');
                outTime.innerText = "4 - 6 godz.";
                descTime.innerText = "Odczuwalny dyskomfort";

                hudCop.classList.add('status-orange');
                outCop.innerText = "2.5 - 3.5";
                descCop.innerText = "Spadek efektywności";

                hudCost.classList.add('status-orange');
                outCost.innerText = "Wzrost o ~30%";
                descCost.innerText = "Tracisz oszczędności";
            } else {
                // STREFA CZERWONA
                hudTime.classList.add('status-red');
                outTime.innerText = "6 - 10 godz.";
                descTime.innerText = "Dom wyziębiony";

                hudCop.classList.add('status-red');
                outCop.innerText = "1.0 - 1.5";
                descCop.innerText = "Grzałki elektryczne ON!";

                hudCost.classList.add('status-red');
                outCost.innerText = "Krytyczny rachunek";
                descCost.innerText = "Gorsze niż grzejniki";
            }
        }
    }

    slider.addEventListener('input', updateSimulation);
    
    // Inicjalizacja na starcie
    updateSimulation();
});
</script>



<style>
:root {
    --rk-pipe-dark: #0f172a;
    --rk-pipe-blue: #0284c7;
    --rk-pipe-blue-light: #f0f9ff;
    --rk-pipe-accent: #38bdf8;
    --rk-pipe-red: #ef4444;
    --rk-pipe-red-light: #fef2f2;
    --rk-pipe-green: #10b981;
    --rk-pipe-green-light: #ecfdf5;
    --rk-pipe-border: #e2e8f0;
    --rk-pipe-text: #334155;
    --rk-pipe-bg: #ffffff;
}

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

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

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

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

/* Sekcja Główna - Jednokolumnowa */
.rk-pipe-container {
    display: flex;
    flex-direction: column;
    background: #f8fafc;
}

/* Górna Część - Symulator Wizualny */
.rk-pipe-simulator {
    padding: 40px 50px 30px 50px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Przełącznik */
.rk-pipe-toggle {
    display: flex;
    background: #e2e8f0;
    padding: 8px;
    border-radius: 14px;
    position: relative;
    max-width: 600px;
    margin: 0 auto;
    width: 100%;
}

.rk-sim-btn {
    flex: 1;
    padding: 16px 10px;
    border: none;
    background: transparent;
    font-size: 15px;
    font-weight: 800;
    color: #64748b;
    cursor: pointer;
    border-radius: 10px;
    position: relative;
    z-index: 2;
    transition: color 0.3s;
    text-align: center;
}

.rk-sim-btn.active {
    color: var(--rk-pipe-dark);
}

.rk-sim-slider {
    position: absolute;
    top: 8px; bottom: 8px; left: 8px;
    width: calc(50% - 8px);
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.rk-sim-btn[data-view="inba"].active ~ .rk-sim-slider {
    transform: translateX(100%);
}

/* Widoki Symulacji */
.rk-sim-view {
    display: none;
    animation: fadeInSim 0.4s ease forwards;
}

.rk-sim-view.active {
    display: block;
}

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

.rk-sim-svg-box {
    background: #ffffff;
    border: 1px solid var(--rk-pipe-border);
    border-radius: 20px;
    padding: 40px 30px;
    box-shadow: 0 10px 25px -5px rgba(0,0,0,0.03);
    text-align: center;
    position: relative;
    overflow: hidden;
}

.rk-sim-title {
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.title-bad { color: var(--rk-pipe-red); }
.title-good { color: var(--rk-pipe-green); }

.rk-sim-svg {
    width: 100%;
    height: auto;
    max-width: 380px; /* Zwiększony rozmiar SVG dla lepszej widoczności na pełnej szerokości */
    margin: 0 auto;
    display: block;
}

/* Animacje Fal Ciepła */
.heat-wave {
    animation: pulseHeat 2.5s infinite alternate ease-in-out;
    transform-origin: center;
}

.heat-wave-bad { fill: rgba(239, 68, 68, 0.2); }
.heat-wave-good { fill: rgba(16, 185, 129, 0.2); }

@keyframes pulseHeat {
    0% { transform: scale(0.9); opacity: 0.6; }
    100% { transform: scale(1.1); opacity: 0.9; }
}

.rk-sim-desc {
    margin-top: 30px;
    padding: 20px;
    border-radius: 14px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 600;
    text-align: center;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.desc-bad { background: var(--rk-pipe-red-light); color: #b91c1c; border: 1px solid #fca5a5; }
.desc-good { background: var(--rk-pipe-green-light); color: #047857; border: 1px solid #6ee7b7; }

/* Dolna Część - Opis i Teoria */
.rk-pipe-content {
    padding: 40px 50px;
    background: var(--rk-pipe-bg);
    border-top: 1px solid var(--rk-pipe-border);
}

.rk-pipe-desc {
    font-size: 16px;
    line-height: 1.7;
    color: var(--rk-pipe-text);
}

.rk-pipe-desc p {
    margin: 0 0 15px 0;
}

.rk-pipe-desc p:last-child {
    margin: 0;
}

.rk-highlight-box {
    background: var(--rk-pipe-blue-light);
    border-left: 4px solid var(--rk-pipe-blue);
    padding: 20px 25px;
    border-radius: 0 12px 12px 0;
    margin: 25px 0;
}

.rk-highlight-box strong {
    color: var(--rk-pipe-dark);
    font-size: 18px;
    display: block;
    margin-bottom: 8px;
}

.rk-pipe-link {
    color: var(--rk-pipe-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s;
}

.rk-pipe-link:hover {
    color: var(--rk-pipe-dark);
}

/* RWD */
@media (max-width: 768px) {
    .rk-pipe-header { padding: 30px 20px; }
    .rk-pipe-simulator { padding: 30px 20px; }
    .rk-pipe-content { padding: 30px 20px; }
    
    .rk-pipe-toggle { flex-direction: column; background: transparent; padding: 0; gap: 10px; }
    .rk-sim-slider { display: none; }
    .rk-sim-btn { background: #e2e8f0; border: 1px solid var(--rk-pipe-border); width: 100%; padding: 14px; }
    .rk-sim-btn.active { background: #ffffff; border-color: var(--rk-pipe-blue); box-shadow: 0 4px 6px rgba(2, 132, 199, 0.1); color: var(--rk-pipe-blue); }
    
    .rk-sim-svg-box { padding: 25px 15px; }
    .rk-sim-desc { text-align: left; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-rozstaw-rur",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Jaki wpływ na czas nagrzewania ma rozstaw rur ogrzewania podłogowego?",
    "description": "Zagęszczenie rur do 10 cm wszędzie to błąd. Rozstaw (np. 15 cm środek, 10 cm przy oknach) musi wynikać z obliczeń OZC, aby uniknąć zęba termicznego.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-rozstaw",
    "name": "Rozkład temperatur a rozstaw rur grzewczych (Symulacja zęba termicznego)",
    "description": "Porównanie efektywności przekazywania ciepła pomiędzy uniwersalnym układem 15 cm a zoptymalizowanym strefowaniem na podstawie bilansu OZC.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "rozstaw rur w wodnym ogrzewaniu podłogowym",
      "strefa brzegowa w ogrzewaniu podłogowym",
      "rozstaw rur ogrzewania podłogowego przy pompie ciepła",
      "projekt ogrzewania podłogowego do domu z dużymi przeszkleniami",
      "ząb termiczny w podłogówce"
    ],
    "measurementTechnique": "Analiza krzywych promieniowania cieplnego wewnątrz wylewki jastrychowej w oparciu o normę PN-EN 1264-2 przy różnym rozstawie przewodów (10 vs 15 cm).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Uniwersalny rozstaw 15cm na oknach powoduje niedogrzanie (tzw. ząb termiczny) i wymaga podbicia temperatury zasilania.",
        "Zagęszczenie stref brzegowych (10cm) i centralnych (15cm) pozwala na pracę pompy ciepła na niskim zasilaniu, podnosząc wskaźnik SCOP."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-rozstaw",
    "name": "Wizualizator Promieniowania Cieplnego Pętli",
    "description": "Interaktywny moduł edukacyjny pokazujący powstawanie martwych stref (zęba termicznego) przy błędnie, uniwersalnie dobranym rozstawie rur.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-pipe-module" id="rozstaw-rur-app">
    <div class="rk-pipe-header">
        <h2>Jaki wpływ na czas nagrzewania ma rozstaw rur podłogówki?</h2>
        <p>Błędny dobór zagęszczenia pętli to jeden z najbardziej kosztownych w skutkach błędów, drastycznie obniżający wskaźnik SCOP pompy ciepła.</p>
    </div>

    <div class="rk-pipe-container">
        
        <div class="rk-pipe-simulator">
            <div class="rk-pipe-toggle">
                <button class="rk-sim-btn active" data-view="oko">Instalator "na oko" (Stałe 15 cm)</button>
                <button class="rk-sim-btn" data-view="inba">Inżynieryjny Projekt (10 cm / 15 cm)</button>
                <div class="rk-sim-slider"></div>
            </div>

            <div class="rk-sim-view active" id="view-oko">
                <div class="rk-sim-svg-box">
                    <div class="rk-sim-title title-bad">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><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>
                        Efekt "Zęba Termicznego"
                    </div>
                    <svg class="rk-sim-svg" viewBox="0 0 200 120">
                        <line x1="10" y1="20" x2="190" y2="20" stroke="#cbd5e1" stroke-width="4" stroke-linecap="round"></line>
                        
                        <circle cx="50" cy="80" r="10" fill="none" stroke="#64748b" stroke-width="4"></circle>
                        <circle cx="50" cy="80" r="35" class="heat-wave heat-wave-bad"></circle>
                        <circle cx="50" cy="80" r="4" fill="#b91c1c"></circle>
                        
                        <circle cx="150" cy="80" r="10" fill="none" stroke="#64748b" stroke-width="4"></circle>
                        <circle cx="150" cy="80" r="35" class="heat-wave heat-wave-bad" style="animation-delay: 0.5s;"></circle>
                        <circle cx="150" cy="80" r="4" fill="#b91c1c"></circle>
                        
                        <path d="M 85 20 Q 100 50 115 20" fill="none" stroke="#3b82f6" stroke-width="3" stroke-dasharray="4" opacity="0.7"></path>
                        <text x="100" y="15" font-family="sans-serif" font-size="12" fill="#3b82f6" font-weight="bold" text-anchor="middle">Zimno!</text>
                        
                        <line x1="65" y1="110" x2="135" y2="110" stroke="#64748b" stroke-width="2"></line>
                        <text x="100" y="105" font-family="sans-serif" font-size="12" fill="#64748b" font-weight="bold" text-anchor="middle">15 cm</text>
                    </svg>
                    <div class="rk-sim-desc desc-bad">
                        Fale ciepła nie przenikają się odpowiednio pod powierzchnią jastrychu w pobliżu zimnego okna tarasowego. Powstają niedogrzane pasy. Jedyny ratunek to drastyczne, nieopłacalne podniesienie temperatury zasilania pompy.
                    </div>
                </div>
            </div>

            <div class="rk-sim-view" id="view-inba">
                <div class="rk-sim-svg-box">
                    <div class="rk-sim-title title-good">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><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>
                        Optymalne Pokrycie (OZC)
                    </div>
                    <svg class="rk-sim-svg" viewBox="0 0 200 120">
                        <line x1="10" y1="20" x2="190" y2="20" stroke="#cbd5e1" stroke-width="4" stroke-linecap="round"></line>
                        
                        <rect x="10" y="0" width="10" height="20" fill="#93c5fd" opacity="0.5"></rect>
                        
                        <circle cx="30" cy="80" r="10" fill="none" stroke="#64748b" stroke-width="4"></circle>
                        <circle cx="30" cy="80" r="35" class="heat-wave heat-wave-good"></circle>
                        <circle cx="30" cy="80" r="4" fill="#047857"></circle>

                        <circle cx="90" cy="80" r="10" fill="none" stroke="#64748b" stroke-width="4"></circle>
                        <circle cx="90" cy="80" r="35" class="heat-wave heat-wave-good" style="animation-delay: 0.3s;"></circle>
                        <circle cx="90" cy="80" r="4" fill="#047857"></circle>

                        <circle cx="170" cy="80" r="10" fill="none" stroke="#64748b" stroke-width="4"></circle>
                        <circle cx="170" cy="80" r="35" class="heat-wave heat-wave-good" style="animation-delay: 0.6s;"></circle>
                        <circle cx="170" cy="80" r="4" fill="#047857"></circle>
                        
                        <line x1="45" y1="110" x2="75" y2="110" stroke="#64748b" stroke-width="2"></line>
                        <text x="60" y="105" font-family="sans-serif" font-size="12" fill="#64748b" font-weight="bold" text-anchor="middle">10 cm</text>

                        <line x1="105" y1="110" x2="155" y2="110" stroke="#64748b" stroke-width="2"></line>
                        <text x="130" y="105" font-family="sans-serif" font-size="12" fill="#64748b" font-weight="bold" text-anchor="middle">15 cm</text>
                    </svg>
                    <div class="rk-sim-desc desc-good">
                        Zagęszczenie do 10 cm przy drzwiach tarasowych blokuje chłód. Płynne przejście w rozstaw 15 cm w głębi pokoju oszczędza rurę i zmniejsza opory tłoczenia. Pompa ciepła pracuje przy idealnych <a href="https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/" style="color:#047857;text-decoration:underline;">35°C na zasilaniu</a>.
                    </div>
                </div>
            </div>
        </div>

        <div class="rk-pipe-content">
            <div class="rk-pipe-desc">
                <p>Wielu instalatorów powiela szkodliwe mity, układając rury „na oko”. Najczęściej stosują uniwersalny rozstaw 15 cm w całym budynku, łącznie ze strefami przy dużych oknach tarasowych, lub – wpadając w drugą skrajność – kładą 10 cm absolutnie wszędzie, sztucznie dławiąc przepływy i marnując materiał.</p>

                <div class="rk-highlight-box">
                    <strong>Rozstaw rur to wynik matematyki, nie zgadywania!</strong>
                    Nie istnieje jeden "najlepszy" rozstaw. Gęstość układania rur musi bezwzględnie wynikać z obliczeniowego zapotrzebowania na ciepło (OZC) dla danego pomieszczenia oraz oporu cieplnego zastosowanej okładziny wierzchniej.
                </div>

                <p>Zgodnie z fizycznymi zależnościami w normie PN-EN 1264-2, ciepło z rury PEX/PERT rozchodzi się promieniście wewnątrz jastrychu. Jeśli zastosujemy uniwersalne 15 cm przy dużych przeszkleniach, powstanie tzw. <strong>„ząb termiczny”</strong>. Energia pokonuje zbyt długą drogę w poziomie, co generuje zimne pasy na podłodze i zmusza inwestora do podbicia temperatury zasilania na pompie o 5-7°C.</p>

                <p>Prawidłowy <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-wodnym-ogrzewaniu-podlogowym/" class="rk-pipe-link">rozstaw rur w ogrzewaniu podłogowym</a> polega na strefowaniu: zagęszczamy do 10 cm <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/" class="rk-pipe-link">strefy brzegowe</a> i łazienki, a w środku pomieszczeń (przy dobrym ociepleniu i gresie) zostawiamy 15 cm. Tylko takie podejście pozwala pompie ciepła pracować na bardzo niskim, energooszczędnym zasilaniu.</p>
                
                <p>Sprawdź jak optymalizuje się <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-do-domu-z-duzymi-przeszkleniami-jak-poradzic-sobie-ze-strefa-przy-oknach/" class="rk-pipe-link">projekty podłogówki dla domów z dużymi przeszkleniami</a>.</p>
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const btns = document.querySelectorAll('#rozstaw-rur-app .rk-sim-btn');
    const views = document.querySelectorAll('#rozstaw-rur-app .rk-sim-view');

    btns.forEach(btn => {
        btn.addEventListener('click', function() {
            const targetView = this.getAttribute('data-view');
            
            // Bezpieczna logika zmiany kart bez użycia znaków zagrażających CMS-om
            if (window.innerWidth <= 768) {
                if (this.classList.contains('active')) {
                    // Na mobile kliknięcie już aktywnego przycisku nic nie robi (zapobiega zwinięciu)
                    return;
                }
            }

            // Reset wszystkich przycisków i widoków
            btns.forEach(b => b.classList.remove('active'));
            views.forEach(v => v.classList.remove('active'));

            // Aktywacja wybranego widoku
            this.classList.add('active');
            const newView = document.getElementById('view-' + targetView);
            if(newView) {
                newView.classList.add('active');
            }
        });
    });
});
</script>



<style>
:root {
    --rk-surf-dark: #0f172a;
    --rk-surf-blue: #0284c7;
    --rk-surf-light: #f8fafc;
    --rk-surf-accent: #38bdf8;
    --rk-surf-green: #10b981;
    --rk-surf-warning: #f59e0b;
    --rk-surf-danger: #ef4444;
    --rk-surf-border: #e2e8f0;
    --rk-surf-text: #334155;
    --rk-surf-bg: #ffffff;
}

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

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

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

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

/* Układ Kafelków (Zamiast Tabeli) */
.rk-surf-grid {
    padding: 40px 50px 20px;
    background: var(--rk-surf-light);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.rk-surf-card {
    background: var(--rk-surf-bg);
    border: 2px solid var(--rk-surf-border);
    border-radius: 16px;
    padding: 25px 15px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.rk-surf-card:hover {
    border-color: var(--rk-surf-blue);
    transform: translateY(-3px);
    box-shadow: 0 10px 20px -5px rgba(2, 132, 199, 0.15);
}

.rk-surf-card.active {
    border-color: var(--rk-surf-blue);
    background: #f0f9ff;
}

.rk-surf-card.active::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 10px 10px 0;
    border-style: solid;
    border-color: var(--rk-surf-blue) transparent transparent transparent;
    display: block;
}

@media (max-width: 768px) {
    .rk-surf-card.active::after { display: none; }
}

.rk-surf-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 15px;
    background: #f1f5f9;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-surf-dark);
    transition: all 0.3s;
}

.rk-surf-card.active .rk-surf-icon {
    background: var(--rk-surf-blue);
    color: #ffffff;
}

.rk-surf-card h3 {
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-surf-dark);
    margin: 0;
    line-height: 1.3;
}

/* Szuflady z danymi */
.rk-surf-drawers {
    padding: 0 50px 40px;
    background: var(--rk-surf-light);
}

.rk-surf-drawer {
    display: none;
    background: var(--rk-surf-bg);
    border: 1px solid var(--rk-surf-blue);
    border-radius: 16px;
    padding: 35px;
    box-shadow: 0 10px 25px -5px rgba(2, 132, 199, 0.1);
    animation: fadeSlideUp 0.4s ease forwards;
}

.rk-surf-drawer.active {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
}

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

/* Wskaźniki Normy */
.rk-norm-box {
    margin-bottom: 20px;
}

.rk-norm-label {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 800;
    color: var(--rk-surf-dark);
    margin-bottom: 8px;
}

.rk-norm-val {
    font-family: monospace;
    font-size: 16px;
    font-weight: 900;
}

.rk-norm-track {
    height: 12px;
    background: #e2e8f0;
    border-radius: 6px;
    overflow: hidden;
    position: relative;
}

.rk-norm-limit {
    position: absolute;
    right: 0; top: 0; bottom: 0; width: 4px;
    background: var(--rk-surf-danger);
    z-index: 2;
}

.rk-norm-fill {
    height: 100%;
    border-radius: 6px;
    transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
    width: 0%;
}

.rk-time-stat {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #f8fafc;
    padding: 15px;
    border-radius: 12px;
    border: 1px solid var(--rk-surf-border);
}

.rk-time-stat svg {
    color: var(--rk-surf-blue);
}

.rk-time-stat div {
    font-size: 14px;
    color: var(--rk-surf-muted);
    font-weight: 700;
}

.rk-time-stat strong {
    display: block;
    font-size: 18px;
    color: var(--rk-surf-dark);
    font-weight: 900;
}

.rk-surf-desc p {
    font-size: 15px;
    line-height: 1.6;
    color: var(--rk-surf-text);
    margin: 0 0 10px 0;
}

.rk-surf-desc p:last-child { margin: 0; }

.rk-surf-link {
    color: var(--rk-surf-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Sekcja Błędu */
.rk-surf-alert {
    margin: 0 50px 40px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-left: 5px solid var(--rk-surf-warning);
    padding: 25px 30px;
    border-radius: 12px;
}

.rk-alert-head {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #b45309;
    font-size: 18px;
    font-weight: 900;
    margin-bottom: 10px;
}

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

/* Mobile */
@media (max-width: 768px) {
    .rk-surf-header, .rk-surf-grid, .rk-surf-drawers, .rk-surf-alert { padding: 25px 20px; }
    .rk-surf-alert { margin: 0 20px 30px; }
    
    .rk-surf-grid { grid-template-columns: 1fr; gap: 10px; padding-bottom: 25px; }
    
    /* Mobilny układ szuflad tuż pod przyciskiem */
    .rk-surf-drawer {
        padding: 20px;
        margin-top: -5px;
        border-radius: 0 0 16px 16px;
        border-top: none;
    }
    
    .rk-surf-card.active { border-radius: 16px 16px 0 0; }
    
    .rk-surf-drawer.active { grid-template-columns: 1fr; gap: 20px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-okladziny",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Jak rodzaj wykończenia podłogi modyfikuje czas reakcji systemu?",
    "description": "Zrozum wpływ oporu cieplnego (R lambda) płytek, paneli winylowych i deski barlineckiej na wydajność i dynamikę wodnego ogrzewania podłogowego. Norma PN-EN 1264.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-okladziny",
    "name": "Tabela Oporów Cieplnych Wykończeń Podłogowych",
    "description": "Zestawienie parametrów termicznych R [m2K/W] oraz czasu przenikania ciepła dla gresu, LVT, laminatu i parkietu na podłogówce.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "jak rodzaj okładziny podłogowej wpływa na wydajność ogrzewania podłogowego",
      "podłogi drewniane vs panele laminowane co wybrać przy ogrzewaniu podłogowym",
      "opór cieplny r m²k w klucz do efektywnego ogrzewania podłogowego",
      "czy pod ogrzewanie podłogowe nadają się panele czy tylko płytki",
      "jakie są najlepsze sposoby izolacji pod ogrzewanie podłogowe"
    ],
    "measurementTechnique": "Określanie przepuszczalności termicznej materiałów zgodnie z ograniczeniami normy europejskiej PN-EN 1264 (max 0.15 m2K/W).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Gres: 0.015 m2K/W (Czas 15-30 min)",
        "LVT: 0.025 m2K/W (Czas 30-45 min)",
        "Laminat: 0.070 m2K/W (Czas 1.5-2.5 h)",
        "Parkiet: 0.130 m2K/W (Czas 3.5-5.0 h)"
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-okladziny",
    "name": "Analizator Oporu Cieplnego Okładzin",
    "description": "Interaktywny moduł edukacyjny przekształcający tabelaryczne wartości oporu cieplnego we wskaźniki procentowe względem limitów normy PN-EN 1264.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-surface-module" id="okladziny-app">
    <div class="rk-surf-header">
        <h2>Jak rodzaj wykończenia modyfikuje czas reakcji systemu?</h2>
        <p>Opór cieplny materiału ułożonego na wylewce to ostateczny filtr termiczny. Norma PN-EN 1264 jasno określa: całkowity opór (okładzina + podkład) nie może przekraczać <strong>0,15 m²·K/W</strong>.</p>
    </div>

    <div class="rk-surf-grid">
        <div class="rk-surf-card active" data-surf="gres">
            <div class="rk-surf-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>
            <h3>Gres / Kamień<br><span style="font-weight:400;font-size:13px;color:#64748b;">(10 mm)</span></h3>
        </div>
        <div class="rk-surf-drawer rk-mob-draw" id="mob-gres"></div>

        <div class="rk-surf-card" data-surf="lvt">
            <div class="rk-surf-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="12" x2="21" y2="12"></line></svg>
            </div>
            <h3>Panele Winylowe<br><span style="font-weight:400;font-size:13px;color:#64748b;">LVT (4,5 mm)</span></h3>
        </div>
        <div class="rk-surf-drawer rk-mob-draw" id="mob-lvt"></div>

        <div class="rk-surf-card" data-surf="laminat">
            <div class="rk-surf-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="2" y="4" width="20" height="16" rx="2" ry="2"></rect><line x1="6" y1="4" x2="6" y2="20"></line><line x1="10" y1="4" x2="10" y2="20"></line><line x1="14" y1="4" x2="14" y2="20"></line><line x1="18" y1="4" x2="18" y2="20"></line></svg>
            </div>
            <h3>Panele Laminat<br><span style="font-weight:400;font-size:13px;color:#64748b;">(8 mm + Podkład)</span></h3>
        </div>
        <div class="rk-surf-drawer rk-mob-draw" id="mob-laminat"></div>

        <div class="rk-surf-card" data-surf="drewno">
            <div class="rk-surf-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 2L2 7l10 5 10-5-10-5z"></path><path d="M2 17l10 5 10-5"></path><path d="M2 12l10 5 10-5"></path></svg>
            </div>
            <h3>Parkiet Dębowy<br><span style="font-weight:400;font-size:13px;color:#64748b;">Klejony (14 mm)</span></h3>
        </div>
        <div class="rk-surf-drawer rk-mob-draw" id="mob-drewno"></div>
    </div>

    <div class="rk-surf-drawers" id="desktop-surf">
        
        <div class="rk-surf-drawer active" id="gres">
            <div class="rk-surf-stats">
                <div class="rk-norm-box">
                    <div class="rk-norm-label">
                        <span>Opór cieplny (R)</span>
                        <span class="rk-norm-val" style="color: var(--rk-surf-green);">0,015 m²·K/W</span>
                    </div>
                    <div class="rk-norm-track">
                        <div class="rk-norm-limit"></div>
                        <div class="rk-norm-fill js-norm" data-w="10%" style="background: var(--rk-surf-green);"></div>
                    </div>
                    <div style="font-size:12px; color:#64748b; text-align:right; margin-top:4px;">Limit normy: 0,15</div>
                </div>
                <div class="rk-time-stat">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    <div>Czas przenikania do pokoju:<strong>15 - 30 minut</strong></div>
                </div>
            </div>
            <div class="rk-surf-desc">
                <p>Absolutny ideał. Ceramika i kamień doskonale przewodzą ciepło z wylewki. Dzięki temu pompa ciepła może pracować na najniższej możliwej krzywej grzewczej, zapewniając maksymalny współczynnik SCOP.</p>
                <a href="https://projekt-ogrzewania.pl/czy-pod-ogrzewanie-podlogowe-nadaja-sie-panele-czy-tylko-plytki/" class="rk-surf-link">Płytki vs panele - co lepsze na ogrzewanie podłogowe?</a>
            </div>
        </div>

        <div class="rk-surf-drawer" id="lvt">
            <div class="rk-surf-stats">
                <div class="rk-norm-box">
                    <div class="rk-norm-label">
                        <span>Opór cieplny (R)</span>
                        <span class="rk-norm-val" style="color: var(--rk-surf-blue);">0,025 m²·K/W</span>
                    </div>
                    <div class="rk-norm-track">
                        <div class="rk-norm-limit"></div>
                        <div class="rk-norm-fill js-norm" data-w="16%" style="background: var(--rk-surf-blue);"></div>
                    </div>
                    <div style="font-size:12px; color:#64748b; text-align:right; margin-top:4px;">Limit normy: 0,15</div>
                </div>
                <div class="rk-time-stat">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    <div>Czas przenikania do pokoju:<strong>30 - 45 minut</strong></div>
                </div>
            </div>
            <div class="rk-surf-desc">
                <p>Bardzo dobra dynamika i niskie tłumienie. Winyl klejony do posadzki stanowi rewelacyjny kompromis dla osób, które chcą faktury drewna, ale zależy im na wysokiej <a href="https://projekt-ogrzewania.pl/jak-rodzaj-okladziny-podlogowej-wplywa-na-wydajnosc-ogrzewania-podlogowego/" class="rk-surf-link">wydajności ogrzewania podłogowego</a>.</p>
            </div>
        </div>

        <div class="rk-surf-drawer" id="laminat">
            <div class="rk-surf-stats">
                <div class="rk-norm-box">
                    <div class="rk-norm-label">
                        <span>Opór cieplny (R)</span>
                        <span class="rk-norm-val" style="color: var(--rk-surf-warning);">0,070 m²·K/W</span>
                    </div>
                    <div class="rk-norm-track">
                        <div class="rk-norm-limit"></div>
                        <div class="rk-norm-fill js-norm" data-w="46%" style="background: var(--rk-surf-warning);"></div>
                    </div>
                    <div style="font-size:12px; color:#64748b; text-align:right; margin-top:4px;">Limit normy: 0,15</div>
                </div>
                <div class="rk-time-stat">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    <div>Czas przenikania do pokoju:<strong>1,5 - 2,5 godziny</strong></div>
                </div>
            </div>
            <div class="rk-surf-desc">
                <p>Przeciętna dynamika. Wymaga rygorystycznego doboru maty podkładowej (np. PUM). Zły podkład błyskawicznie "przebije" limit normy, tworząc izolator. Kluczowy jest tu sumaryczny <a href="https://projekt-ogrzewania.pl/opor-cieplny-r-m%c2%b2k-w-klucz-do-efektywnego-ogrzewania-podlogowego/" class="rk-surf-link">opór cieplny R</a>.</p>
            </div>
        </div>

        <div class="rk-surf-drawer" id="drewno">
            <div class="rk-surf-stats">
                <div class="rk-norm-box">
                    <div class="rk-norm-label">
                        <span>Opór cieplny (R)</span>
                        <span class="rk-norm-val" style="color: var(--rk-surf-danger);">0,130 m²·K/W</span>
                    </div>
                    <div class="rk-norm-track">
                        <div class="rk-norm-limit"></div>
                        <div class="rk-norm-fill js-norm" data-w="86%" style="background: var(--rk-surf-danger);"></div>
                    </div>
                    <div style="font-size:12px; color:#64748b; text-align:right; margin-top:4px;">Limit normy: 0,15</div>
                </div>
                <div class="rk-time-stat">
                    <svg width="32" height="32" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    <div>Czas przenikania do pokoju:<strong>3,5 - 5,0 godzin</strong></div>
                </div>
            </div>
            <div class="rk-surf-desc">
                <p>System działa na krawędzi limitu normy 1264. Charakteryzuje się ogromną bezwładnością i ograniczeniem jednostkowej mocy grzewczej posadzki (z reguły max 60 W/m²). Rozważając dylemat <a href="https://projekt-ogrzewania.pl/podlogi-drewniane-vs-panele-laminowane-co-wybrac-przy-ogrzewaniu-podlogowym/" class="rk-surf-link">podłogi drewniane vs panele</a>, pamiętaj o wyższej temp. zasilania.</p>
            </div>
        </div>
    </div>

    <div class="rk-surf-alert">
        <div class="rk-alert-head">
            <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>
            Powszechny Błąd Inwestorski
        </div>
        <p>Montaż grubych paneli na "zwykłej" piance polietylenowej to proszenie się o kłopoty. Tani podkład to izolator o oporze rzędu <strong>0,08 m²·K/W</strong>. Razem z panelem opór przekracza dopuszczalne normy. Ciepło dusi się w betonie, wylewka nagrzewa się kilkanaście godzin, a wracający ukrop wywołuje zabójcze dla pomp ciepła taktowanie sprężarki. Szukając <a href="https://projekt-ogrzewania.pl/jakie-sa-najlepsze-sposoby-izolacji-pod-ogrzewanie-podlogowe/" style="color:#b45309;font-weight:700;text-decoration:underline;">najlepszej izolacji pod podłogówkę</a>, wybieraj tylko dedykowane maty kwarcowe (PUM).</p>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const cards = document.querySelectorAll('#okladziny-app .rk-surf-card');
    const deskDrawers = document.querySelectorAll('#okladziny-app #desktop-surf .rk-surf-drawer');
    const desktopContainer = document.getElementById('desktop-surf');

    // Funkcja odpalająca animacje pasków (R lambda)
    function animateNorms(container) {
        const fills = container.querySelectorAll('.js-norm');
        fills.forEach(fill => {
            fill.style.width = '0%';
            setTimeout(() => {
                fill.style.width = fill.getAttribute('data-w');
            }, 50);
        });
    }

    // Kopiowanie do domów mobilnych
    const cloneToMobile = () => {
        deskDrawers.forEach(drawer => {
            const mobTarget = document.getElementById('mob-' + drawer.id);
            if(mobTarget) {
                mobTarget.innerHTML = drawer.innerHTML;
            }
        });
    };
    cloneToMobile();
    
    // Inicjalna animacja
    animateNorms(document.getElementById('gres'));

    cards.forEach(card => {
        card.addEventListener('click', function() {
            const targetId = this.getAttribute('data-surf');
            const isMobile = window.innerWidth <= 768;

            if (isMobile) {
                if (this.classList.contains('active')) {
                    this.classList.remove('active');
                    const activeMobDrawer = document.getElementById('mob-' + targetId);
                    if(activeMobDrawer) activeMobDrawer.classList.remove('active');
                    return;
                }
            }

            // Reset
            cards.forEach(c => c.classList.remove('active'));
            deskDrawers.forEach(d => d.classList.remove('active'));
            document.querySelectorAll('#okladziny-app .rk-mob-draw').forEach(md => md.classList.remove('active'));

            this.classList.add('active');

            if (isMobile) {
                desktopContainer.style.display = 'none';
                const mobDrawer = document.getElementById('mob-' + targetId);
                if(mobDrawer) {
                    mobDrawer.classList.add('active');
                    animateNorms(mobDrawer);
                }
            } else {
                desktopContainer.style.display = 'block';
                const deskDrawer = document.getElementById(targetId);
                if(deskDrawer) {
                    deskDrawer.classList.add('active');
                    animateNorms(deskDrawer);
                }
            }
        });
    });

    // Obsługa zmiany orientacji
    window.addEventListener('resize', function() {
        const activeCard = document.querySelector('#okladziny-app .rk-surf-card.active');
        if (activeCard) {
            const targetId = activeCard.getAttribute('data-surf');
            if (window.innerWidth <= 768) {
                desktopContainer.style.display = 'none';
                document.querySelectorAll('#okladziny-app .rk-mob-draw').forEach(md => md.classList.remove('active'));
                const mobDrawer = document.getElementById('mob-' + targetId);
                if(mobDrawer) {
                    mobDrawer.classList.add('active');
                    animateNorms(mobDrawer);
                }
            } else {
                desktopContainer.style.display = 'block';
                document.querySelectorAll('#okladziny-app .rk-mob-draw').forEach(md => md.classList.remove('active'));
                deskDrawers.forEach(d => d.classList.remove('active'));
                const deskDrawer = document.getElementById(targetId);
                if(deskDrawer) {
                    deskDrawer.classList.add('active');
                    animateNorms(deskDrawer);
                }
            }
        }
    });
});
</script>



<style>
:root {
    --rk-tech-dark: #0f172a;
    --rk-tech-blue: #0284c7;
    --rk-tech-blue-light: #f0f9ff;
    --rk-tech-green: #10b981;
    --rk-tech-red: #ef4444;
    --rk-tech-bg: #ffffff;
    --rk-tech-gray: #f8fafc;
    --rk-tech-border: #e2e8f0;
    --rk-tech-text: #334155;
    --rk-tech-muted: #64748b;
}

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

/* Nagłówek */
.rk-tech-header {
    padding: 40px 50px 30px;
    background: var(--rk-tech-bg);
    border-bottom: 1px solid var(--rk-tech-border);
}

.rk-tech-header h2 {
    font-size: 26px;
    font-weight: 900;
    color: var(--rk-tech-dark);
    margin: 0 0 15px 0;
    line-height: 1.3;
}

.rk-tech-header p {
    font-size: 16px;
    color: var(--rk-tech-text);
    margin: 0;
    line-height: 1.6;
}

/* Interfejs Przełącznika */
.rk-tech-ui {
    background: var(--rk-tech-gray);
    padding: 40px 50px;
}

.rk-toggle-wrapper {
    display: flex;
    background: #e2e8f0;
    border-radius: 16px;
    padding: 8px;
    position: relative;
    margin-bottom: 40px;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.05);
}

.rk-toggle-btn {
    flex: 1;
    padding: 16px 20px;
    border: none;
    background: transparent;
    font-size: 16px;
    font-weight: 800;
    color: var(--rk-tech-muted);
    cursor: pointer;
    border-radius: 12px;
    transition: all 0.3s ease;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.rk-toggle-btn.active {
    color: var(--rk-tech-blue);
}

.rk-toggle-slider {
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 8px;
    width: calc(50% - 8px);
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.rk-toggle-btn[data-tech="suchy"].active ~ .rk-toggle-slider {
    transform: translateX(100%);
}

/* Kontenery Danych */
.rk-tech-panel {
    display: none;
    animation: fadeInPanel 0.4s ease forwards;
}

.rk-tech-panel.active {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
    align-items: start;
}

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

/* Wizualizacja Warstw */
.rk-layer-box {
    background: #ffffff;
    border: 1px solid var(--rk-tech-border);
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.02);
}

.rk-layer-title {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 800;
    color: var(--rk-tech-muted);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.rk-layer-diagram {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.rk-layer {
    padding: 12px 15px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    border: 1px solid rgba(0,0,0,0.1);
}

.layer-pex { background: #fee2e2; color: #b91c1c; border-color: #fca5a5; }
.layer-concrete { background: #e2e8f0; color: #475569; padding: 25px 15px !important; }
.layer-alu { background: #e0f2fe; color: #0369a1; border-color: #bae6fd; }
.layer-finish { background: #fef3c7; color: #b45309; }

/* Wskaźniki Metryczne (Progress Bars) */
.rk-metrics-box {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.rk-metric {
    background: #ffffff;
    padding: 20px;
    border-radius: 16px;
    border: 1px solid var(--rk-tech-border);
}

.rk-metric-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 12px;
}

.rk-metric-label {
    font-size: 14px;
    font-weight: 800;
    color: var(--rk-tech-dark);
}

.rk-metric-val {
    font-size: 20px;
    font-weight: 900;
    font-family: monospace;
}

.rk-progress-bg {
    height: 10px;
    background: #e2e8f0;
    border-radius: 5px;
    overflow: hidden;
}

.rk-progress-fill {
    height: 100%;
    border-radius: 5px;
    transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
    width: 0%; /* Start dla animacji */
}

/* Opisy i Linki */
.rk-tech-desc {
    font-size: 15px;
    line-height: 1.7;
    color: var(--rk-tech-text);
    margin-top: 15px;
}

.rk-tech-link {
    color: var(--rk-tech-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rk-tech-link:hover { color: var(--rk-tech-dark); }

.rk-alert-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fef2f2;
    color: var(--rk-tech-red);
    padding: 6px 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    margin-top: 10px;
    border: 1px solid #fecaca;
}

/* RWD - Mobile */
@media (max-width: 768px) {
    .rk-tech-header, .rk-tech-ui { padding: 30px 20px; }
    .rk-toggle-wrapper { flex-direction: column; background: transparent; padding: 0; box-shadow: none; gap: 10px; }
    .rk-toggle-slider { display: none; }
    .rk-toggle-btn { background: #e2e8f0; border: 1px solid var(--rk-tech-border); width: 100%; }
    .rk-toggle-btn.active { background: #ffffff; border-color: var(--rk-tech-blue); box-shadow: 0 4px 10px rgba(0,0,0,0.05); }
    .rk-tech-panel.active { grid-template-columns: 1fr; gap: 25px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-mokry-suchy",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Czas nagrzewania w systemie mokrym a system suchy ogrzewania podłogowego – jakie są różnice?",
    "description": "System suchy skraca czas reakcji podłogówki o ponad 85% i eliminuje problem obciążenia stropów w domach szkieletowych. Porównanie bezwładności i wagi.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-mokry-suchy",
    "name": "Porównanie dynamiki i obciążeń: System Suchy vs Mokry",
    "description": "Dane techniczne pokazujące różnice w masie akumulacyjnej (kg/m2) oraz czasie reakcji cieplnej (minuty vs godziny) w zależności od wybranej technologii jastrychu.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "system mokry czy suchy w wodnym ogrzewaniu podłogowym",
      "ogrzewanie podłogowe w domu szkieletowym",
      "czy ogrzewanie podłogowe nadaje się do drewnianego stropu",
      "czas nagrzewania systemu suchego",
      "waga wylewki betonowej na m2"
    ],
    "measurementTechnique": "Zestawienie obciążeń statycznych stropu w kg/m2 oraz empiryczny pomiar opóźnienia hydraulicznego (czasu nasycenia energią).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "System Mokry: Czas reakcji 6-10h, waga 130-150 kg/m2 (ryzyko dla starych stropów).",
        "System Suchy: Czas reakcji 20-45 min, waga ok. 25 kg/m2 (idealny dla domów szkieletowych)."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-mokry-suchy",
    "name": "Symulator Wyboru Technologii Podłogówki",
    "description": "Interaktywny przełącznik wizualizujący różnice w czasie nagrzewania i obciążeniu konstrukcji między jastrychem cementowym a zabudową lekką (lamelami aluminiowymi).",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-tech-module" id="tech-mokry-suchy">
    <div class="rk-tech-header">
        <h2>Czas nagrzewania w systemie mokrym a system suchy ogrzewania podłogowego – jakie są różnice?</h2>
        <p>Wybór między klasyczną wylewką a systemem suchym to nie tylko kwestia ceny. To decyzja o dynamice budynku i bezpieczeństwie konstrukcyjnym Twojego stropu.</p>
    </div>

    <div class="rk-tech-ui">
        <div class="rk-toggle-wrapper">
            <button class="rk-toggle-btn active" data-tech="mokry">
                <svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2v20"></path><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                Klasyczny System Mokry
            </button>
            <button class="rk-toggle-btn" data-tech="suchy">
                <svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z"></path></svg>
                System Suchy (Zabudowa Lekka)
            </button>
            <div class="rk-toggle-slider"></div>
        </div>

        <div class="rk-tech-panel active" id="panel-mokry">
            <div class="rk-layer-box">
                <div class="rk-layer-title">
                    <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line></svg>
                    Struktura podłogi (Masa!)
                </div>
                <div class="rk-layer-diagram">
                    <div class="rk-layer layer-finish">Płytka / Gres (Opóźnienie)</div>
                    <div class="rk-layer layer-concrete">70 mm Betonu (Potężny Magazyn Ciepła)</div>
                    <div class="rk-layer layer-pex">Rura Grzewcza PEX</div>
                </div>
                <div class="rk-tech-desc">
                    Zastosowanie klasycznego systemu wiąże się z gigantycznym ciężarem. Montaż takiej wylewki na starych belkach to odpowiedź na to, dlaczego powstają pytania <a href="https://projekt-ogrzewania.pl/czy-ogrzewanie-podlogowe-nadaje-sie-do-drewnianego-stropu/" class="rk-tech-link">czy ogrzewanie podłogowe nadaje się do drewnianego stropu</a>. 
                    <div class="rk-alert-badge">Niesie to ogromne ryzyko katastrofy budowlanej!</div>
                </div>
            </div>

            <div class="rk-metrics-box">
                <div class="rk-metric">
                    <div class="rk-metric-head">
                        <span class="rk-metric-label">Czas reakcji (nagrzewanie)</span>
                        <span class="rk-metric-val" style="color: var(--rk-tech-red);">6-10 godz.</span>
                    </div>
                    <div class="rk-progress-bg">
                        <div class="rk-progress-fill js-fill" data-width="95%" style="background: var(--rk-tech-red);"></div>
                    </div>
                </div>
                <div class="rk-metric">
                    <div class="rk-metric-head">
                        <span class="rk-metric-label">Obciążenie stropu (Ciężar)</span>
                        <span class="rk-metric-val" style="color: var(--rk-tech-dark);">130-150 kg/m²</span>
                    </div>
                    <div class="rk-progress-bg">
                        <div class="rk-progress-fill js-fill" data-width="100%" style="background: var(--rk-tech-dark);"></div>
                    </div>
                </div>
                <p class="rk-tech-desc" style="margin-top:0;">Wybór tej technologii rodzi dylemat <a href="https://projekt-ogrzewania.pl/system-mokry-czy-suchy-w-wodnym-ogrzewaniu-podlogowym-ktory-wybrac/" class="rk-tech-link">system mokry czy suchy w wodnym ogrzewaniu podłogowym</a>. Mokry ma doskonałą bezwładność, ale gigantyczne opóźnienie hydrauliczne.</p>
            </div>
        </div>

        <div class="rk-tech-panel" id="panel-suchy">
            <div class="rk-layer-box">
                <div class="rk-layer-title">
                    <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line></svg>
                    Struktura podłogi (Lekka)
                </div>
                <div class="rk-layer-diagram">
                    <div class="rk-layer layer-finish">Cienki Panel / Płytka z klejem</div>
                    <div class="rk-layer layer-alu">Lamela Aluminiowa (Szybki Radiator)</div>
                    <div class="rk-layer layer-pex">Rura Grzewcza w styropianie EPS</div>
                </div>
                <div class="rk-tech-desc">
                    W systemie suchym eliminujemy ciężki beton. Płyta gipsowo-włóknista z lamelami oddaje ciepło natychmiast. Jest to jedyne sensowne <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/" class="rk-tech-link">ogrzewanie podłogowe w domu szkieletowym</a>. Domy z drewna nie akumulują ciepła w ścianach – wymagają dynamicznej, błyskawicznej reakcji, którą daje tylko system suchy.
                </div>
            </div>

            <div class="rk-metrics-box">
                <div class="rk-metric">
                    <div class="rk-metric-head">
                        <span class="rk-metric-label">Czas reakcji (nagrzewanie)</span>
                        <span class="rk-metric-val" style="color: var(--rk-tech-green);">20-45 min.</span>
                    </div>
                    <div class="rk-progress-bg">
                        <div class="rk-progress-fill js-fill" data-width="15%" style="background: var(--rk-tech-green);"></div>
                    </div>
                </div>
                <div class="rk-metric">
                    <div class="rk-metric-head">
                        <span class="rk-metric-label">Obciążenie stropu (Ciężar)</span>
                        <span class="rk-metric-val" style="color: var(--rk-tech-blue);">~25 kg/m²</span>
                    </div>
                    <div class="rk-progress-bg">
                        <div class="rk-progress-fill js-fill" data-width="20%" style="background: var(--rk-tech-blue);"></div>
                    </div>
                </div>
                <p class="rk-tech-desc" style="margin-top:0;">Dzięki skróceniu czasu reakcji o <strong>ponad 85%</strong>, system idealnie współpracuje z automatyką pokojową i błyskawicznie reaguje na nasłonecznienie.</p>
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const toggleBtns = document.querySelectorAll('#tech-mokry-suchy .rk-toggle-btn');
    const panels = document.querySelectorAll('#tech-mokry-suchy .rk-tech-panel');

    // Funkcja odpalająca animacje pasków postępu
    function animateBars(panelId) {
        const activePanel = document.getElementById(panelId);
        const bars = activePanel.querySelectorAll('.js-fill');
        
        // Reset szerokości
        bars.forEach(bar => { bar.style.width = '0%'; });
        
        // Opóźnienie animacji dla efektu wizualnego
        setTimeout(() => {
            bars.forEach(bar => {
                const targetWidth = bar.getAttribute('data-width');
                bar.style.width = targetWidth;
            });
        }, 50);
    }

    // Inicjalna animacja dla domyślnego panelu
    animateBars('panel-mokry');

    toggleBtns.forEach(btn => {
        btn.addEventListener('click', function() {
            const targetTech = this.getAttribute('data-tech');
            const targetPanelId = 'panel-' + targetTech;

            // Reset stanów
            toggleBtns.forEach(b => b.classList.remove('active'));
            panels.forEach(p => p.classList.remove('active'));

            // Aktywacja wybranych
            this.classList.add('active');
            document.getElementById(targetPanelId).classList.add('active');

            // Uruchom animację pasków dla nowo otwartej zakładki
            animateBars(targetPanelId);
        });
    });
});
</script>



<style>
:root {
    --rk-calc-dark: #0f172a;
    --rk-calc-panel: #1e293b;
    --rk-calc-blue: #0ea5e9;
    --rk-calc-blue-hover: #0284c7;
    --rk-calc-accent: #38bdf8;
    --rk-calc-bg: #ffffff;
    --rk-calc-gray: #f8fafc;
    --rk-calc-border: #e2e8f0;
    --rk-calc-text: #334155;
    --rk-calc-text-light: #94a3b8;
    --rk-calc-warning: #f59e0b;
}

.rk-calc-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-calc-bg);
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(14, 165, 233, 0.15);
    border: 1px solid var(--rk-calc-blue);
    overflow: hidden;
}

/* Nagłówek */
.rk-calc-header {
    background: var(--rk-calc-dark);
    padding: 40px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-calc-blue);
    position: relative;
    overflow: hidden;
}

.rk-calc-header::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: radial-gradient(rgba(56, 189, 248, 0.15) 1px, transparent 1px);
    background-size: 15px 15px;
    opacity: 0.5;
}

.rk-calc-header-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 20px;
}

.rk-calc-icon {
    width: 60px;
    height: 60px;
    background: rgba(14, 165, 233, 0.2);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-calc-accent);
    border: 1px solid rgba(14, 165, 233, 0.4);
    flex-shrink: 0;
}

.rk-calc-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0 0 8px 0;
    line-height: 1.2;
    color: #ffffff;
}

.rk-calc-header p {
    font-size: 15px;
    color: var(--rk-calc-text-light);
    margin: 0;
}

/* Główny układ interfejsu */
.rk-calc-dashboard {
    display: grid;
    grid-template-columns: 1fr 340px;
    background: var(--rk-calc-gray);
    border-bottom: 1px solid var(--rk-calc-border);
}

/* Lewa strona - Suwaki */
.rk-calc-controls {
    padding: 40px 50px;
    background: #ffffff;
}

.rk-calc-group {
    margin-bottom: 25px;
}

.rk-calc-group:last-child {
    margin-bottom: 0;
}

.rk-calc-label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.rk-calc-label {
    font-size: 15px;
    font-weight: 700;
    color: var(--rk-calc-dark);
}

.rk-calc-val-display {
    background: var(--rk-calc-gray);
    padding: 4px 12px;
    border-radius: 8px;
    font-family: monospace;
    font-weight: 800;
    font-size: 15px;
    color: var(--rk-calc-blue);
    border: 1px solid var(--rk-calc-border);
}

/* Stylizacja Suwaków */
input[type=range].rk-slider {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
}

input[type=range].rk-slider:focus {
    outline: none;
}

input[type=range].rk-slider::-webkit-slider-runnable-track {
    width: 100%;
    height: 8px;
    cursor: pointer;
    background: #cbd5e1;
    border-radius: 4px;
    transition: background 0.2s;
}

input[type=range].rk-slider::-webkit-slider-thumb {
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background: var(--rk-calc-blue);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -8px;
    box-shadow: 0 4px 6px rgba(14, 165, 233, 0.3);
    border: 3px solid #ffffff;
    transition: transform 0.1s;
}

input[type=range].rk-slider::-webkit-slider-thumb:hover {
    transform: scale(1.15);
    background: var(--rk-calc-blue-hover);
}

/* Prawa strona - Wyniki (HUD) */
.rk-calc-results {
    background: var(--rk-calc-panel);
    padding: 40px 35px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.rk-result-box {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.rk-result-box::before {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 4px; height: 100%;
    background: var(--rk-calc-blue);
}

.rk-result-box.highlight::before {
    background: var(--rk-calc-accent);
    box-shadow: 0 0 15px var(--rk-calc-accent);
}

.rk-result-label {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--rk-calc-text-light);
    margin-bottom: 5px;
    font-weight: 700;
}

.rk-result-value {
    font-size: 32px;
    font-weight: 900;
    color: #ffffff;
    font-family: monospace;
}

.rk-result-unit {
    font-size: 16px;
    color: var(--rk-calc-accent);
    font-weight: 700;
}

#rk-calc-warning {
    display: none;
    background: rgba(245, 158, 11, 0.1);
    border: 1px solid var(--rk-calc-warning);
    color: var(--rk-calc-warning);
    padding: 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    margin-top: 10px;
}

/* Teoria / Algorytm */
.rk-calc-theory {
    padding: 40px 50px;
    background: var(--rk-calc-bg);
}

.rk-calc-theory h3 {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-calc-dark);
    margin: 0 0 20px 0;
}

.rk-theory-text {
    font-size: 16px;
    line-height: 1.7;
    color: var(--rk-calc-text);
}

.rk-step-box {
    background: var(--rk-calc-gray);
    border-left: 4px solid var(--rk-calc-blue);
    padding: 20px;
    margin: 20px 0;
    border-radius: 0 12px 12px 0;
}

.rk-step-title {
    font-weight: 800;
    color: var(--rk-calc-dark);
    margin-bottom: 10px;
    font-size: 17px;
}

.rk-formula {
    display: inline-block;
    background: #ffffff;
    padding: 8px 15px;
    border-radius: 6px;
    font-family: monospace;
    font-size: 16px;
    font-weight: 700;
    color: var(--rk-calc-blue);
    border: 1px solid var(--rk-calc-border);
    margin: 10px 0;
}

.rk-calc-theory ul {
    margin: 10px 0 15px 20px;
    padding: 0;
}

.rk-calc-theory li {
    margin-bottom: 5px;
}

.rk-tag-inline {
    background: var(--rk-calc-gray);
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    border: 1px solid var(--rk-calc-border);
}

/* RWD - Mobile */
@media (max-width: 768px) {
    .rk-calc-header, .rk-calc-controls, .rk-calc-theory {
        padding: 30px 20px;
    }
    
    .rk-calc-header-content {
        flex-direction: column;
        text-align: center;
    }
    
    .rk-calc-dashboard {
        grid-template-columns: 1fr;
    }
    
    .rk-calc-results {
        padding: 30px 20px;
    }
    
    .rk-result-value {
        font-size: 28px;
    }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-algorytm",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Kalkulator czasu nagrzewania ogrzewania podłogowego i bezwładności termicznej",
    "description": "Interaktywny algorytm obliczania masy jastrychu, zapotrzebowania na energię rozruchową oraz czasu reakcji płyty grzewczej dla 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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-algorytm",
    "name": "Zmienne i stałe fizyczne bezwładności jastrychów",
    "description": "Dane wejściowe kalkulatora: parametry termodynamiczne jastrychów cementowych i anhydrytowych.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "kalkulator czasu nagrzewania ogrzewania podłogowego",
      "grubość wylewki betonowej na ogrzewanie podłogowe",
      "wylewka betonowa na ogrzewanie podłogowe",
      "zapotrzebowanie na ciepło do ogrzewania",
      "ile wody potrzeba do wypełnienia instalacji podłogówki kalkulator"
    ],
    "measurementTechnique": "Algorytm bazujący na gęstości objętościowej (2200 kg/m3) i cieple właściwym betonu (0.2778 Wh/kgK) do wyznaczania energii fazy rozruchu.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Masa płyty (M) = Powierzchnia (A) × Grubość (h) × Gęstość (ρ)",
        "Energia Rozruchu (Q) = M × ciepło właściwe (cw) × Delta T",
        "Czas nagrzewania (tau) = Q / (Moc źródła - Straty cieplne)"
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-kalkulator",
    "name": "Kalkulator Bezwładności Cieplnej Podłogówki",
    "description": "Narzędzie inżynierskie online w czasie rzeczywistym obliczające masę wylewki, wymaganą energię w kWh oraz czas nagrzewania w godzinach na podstawie wprowadzonych danych budynku.",
    "applicationCategory": "CalculatorApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-calc-module" id="kalkulator-nagrzewania">
    
    <div class="rk-calc-header">
        <div class="rk-calc-header-content">
            <div class="rk-calc-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"><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>
            </div>
            <div>
                <h2>Kalkulator Czasu Nagrzewania Podłogówki</h2>
                <p>Sprawdź na żywo, ile energii i czasu potrzebuje Twoja wylewka, by osiągnąć komfort cieplny.</p>
            </div>
        </div>
    </div>

    <div class="rk-calc-dashboard">
        
        <div class="rk-calc-controls">
            
            <div class="rk-calc-group">
                <div class="rk-calc-label-row">
                    <span class="rk-calc-label">Powierzchnia grzewcza (A)</span>
                    <span class="rk-calc-val-display"><span id="rk-calc-val-area">100</span> m²</span>
                </div>
                <input type="range" id="rk-calc-in-area" class="rk-slider" min="20" max="300" step="5" value="100">
            </div>

            <div class="rk-calc-group">
                <div class="rk-calc-label-row">
                    <span class="rk-calc-label">Grubość wylewki (h)</span>
                    <span class="rk-calc-val-display"><span id="rk-calc-val-thick">7</span> cm</span>
                </div>
                <input type="range" id="rk-calc-in-thick" class="rk-slider" min="4" max="12" step="0.5" value="7">
            </div>

            <div class="rk-calc-group">
                <div class="rk-calc-label-row">
                    <span class="rk-calc-label">Oczekiwany przyrost temp. (ΔT)</span>
                    <span class="rk-calc-val-display"><span id="rk-calc-val-temp">13</span> °C</span>
                </div>
                <input type="range" id="rk-calc-in-temp" class="rk-slider" min="1" max="25" step="1" value="13">
                <div style="font-size: 12px; color: #64748b; margin-top: 5px;">Różnica: Temp. Docelowa minus Temp. Początkowa.</div>
            </div>

            <div class="rk-calc-group">
                <div class="rk-calc-label-row">
                    <span class="rk-calc-label">Moc źródła ciepła (P)</span>
                    <span class="rk-calc-val-display"><span id="rk-calc-val-power">6.0</span> kW</span>
                </div>
                <input type="range" id="rk-calc-in-power" class="rk-slider" min="2" max="20" step="0.5" value="6.0">
            </div>

            <div class="rk-calc-group">
                <div class="rk-calc-label-row">
                    <span class="rk-calc-label">Chwilowe straty ciepła budynku</span>
                    <span class="rk-calc-val-display"><span id="rk-calc-val-loss">2.0</span> kW</span>
                </div>
                <input type="range" id="rk-calc-in-loss" class="rk-slider" min="0" max="15" step="0.5" value="2.0">
            </div>

        </div>

        <div class="rk-calc-results">
            
            <div class="rk-result-box">
                <div class="rk-result-label">Masa Akumulacyjna Jastrychu</div>
                <div class="rk-result-value"><span id="rk-calc-out-mass">15 400</span> <span class="rk-result-unit">kg</span></div>
            </div>

            <div class="rk-result-box">
                <div class="rk-result-label">Energia potrzebna na start</div>
                <div class="rk-result-value"><span id="rk-calc-out-energy">55.6</span> <span class="rk-result-unit">kWh</span></div>
            </div>

            <div class="rk-result-box highlight">
                <div class="rk-result-label">Czas Pełnego Nagrzewania</div>
                <div class="rk-result-value"><span id="rk-calc-out-time">13.9</span> <span class="rk-result-unit">godz.</span></div>
            </div>

            <div id="rk-calc-warning">⚠️ Uwaga: Straty ciepła są równe lub większe od mocy źródła. Płyta nigdy się nie nagrzeje!</div>

        </div>
    </div>

    <div class="rk-calc-theory">
        <h3>Algorytm obliczania bezwładności termicznej i zapotrzebowania na energię rozruchową płyty grzewczej</h3>
        <div class="rk-theory-text">
            <p>Aby precyzyjnie określić, ile energii (<span class="rk-tag-inline">E</span>) i czasu (<span class="rk-tag-inline">τ</span>) potrzebuje płyta grzewcza do osiągnięcia temperatury roboczej, należy przeprowadzić wieloetapowe obliczenia inżynierskie bazujące na masie układu, cieple właściwym betonu oraz projektowej mocy jednostkowej.</p>

            <div class="rk-step-box">
                <div class="rk-step-title">Krok 1: Obliczenie masy płyty grzewczej (M)</div>
                <p>Masę jastrychu cementowego wyznaczamy ze wzoru:</p>
                <div class="rk-formula">M = A × h × ρ</div>
                <p>Gdzie:</p>
                <ul>
                    <li><strong>A</strong> – powierzchnia grzewcza [m²]</li>
                    <li><strong>h</strong> – całkowita grubość wylewki [m]</li>
                    <li><strong>ρ</strong> – gęstość objętościowa jastrychu (dla betonu cementowego przyjmuje się 2200 kg/m³, dla anhydrytu 2100 kg/m³).</li>
                </ul>
                <p><em>Przykład dla powierzchni A = 100 m² i grubości wylewki h = 0,07 m:</em><br>
                M = 100 × 0.07 × 2200 = <strong>15400 kg</strong></p>
            </div>

            <div class="rk-step-box">
                <div class="rk-step-title">Krok 2: Energia potrzebna do podniesienia temp. wylewki (Q_roz)</div>
                <p>Ilość energii niezbędnej do nagrzania masy betonu o zadaną różnicę temperatur (ΔT) określa fundamentalne równanie termodynamiki:</p>
                <div class="rk-formula">Q_roz = M × c_w × ΔT</div>
                <p>Gdzie:</p>
                <ul>
                    <li><strong>c_w</strong> – ciepło właściwe jastrychu (dla betonu przyjmuje się 1.0 kJ/(kg·K), co odpowiada 0.2778 Wh/(kg·K))</li>
                    <li><strong>ΔT</strong> – wymagany przyrost temperatury płyty (np. od stanu zimnego 15°C do średniej temperatury pracy 28°C, czyli ΔT = 13 K).</li>
                </ul>
                <p><em>Podstawiając dane:</em><br>
                Q_roz = 15400 × 0.2778 × 13 = <strong>55615.56 Wh ≈ 55.62 kWh</strong></p>
            </div>

            <div class="rk-step-box">
                <div class="rk-step-title">Krok 3: Wyznaczenie czasu nagrzewania strukturalnego (τ)</div>
                <p>Czas potrzebny na dostarczenie tej energii przy założeniu projektowej strumieniowej wydajności cieplnej instalacji (P_inst) obliczamy ze wzoru:</p>
                <div class="rk-formula">τ = Q_roz / (P_inst - Q_strat)</div>
                <p>Gdzie:</p>
                <ul>
                    <li><strong>P_inst</strong> – całkowita moc dostarczana przez źródło ciepła do pętli (np. 6000 W dla domu o powierzchni 100 m²).</li>
                    <li><strong>Q_strat</strong> – chwilowe straty ciepła budynku do otoczenia w trakcie nagrzewania (przyjmijmy średnio 2000 W).</li>
                </ul>
                <p><em>Obliczenie czasu:</em><br>
                τ = 55615.56 / 4000 = <strong>13.9 godzin</strong></p>
            </div>

            <p><strong>Wnioski z algorytmu:</strong> Układ potrzebuje blisko 14 godzin ciągłej pracy źródła ciepła z pełną mocą <u>wyłącznie na nasycenie termiczne samego betonu</u>, nie wliczając w to ogrzania kubatury powietrza i skompensowania bieżących strat przez przegrody.</p>
        </div>
    </div>
</div>

<script>
// Używamy bezpiecznej, zanonimizowanej funkcji wykonującej się po załadowaniu drzewa DOM
(function() {
    function initCalc() {
        // Zabezpieczenie przed błędem w przypadku braku kontenera
        if (!document.getElementById('kalkulator-nagrzewania')) return;

        // Pobieranie elementów suwaków (z bezpiecznymi prefiksami rk-calc-)
        const inArea = document.getElementById('rk-calc-in-area');
        const inThick = document.getElementById('rk-calc-in-thick');
        const inTemp = document.getElementById('rk-calc-in-temp');
        const inPower = document.getElementById('rk-calc-in-power');
        const inLoss = document.getElementById('rk-calc-in-loss');

        // Pobieranie etykiet
        const valArea = document.getElementById('rk-calc-val-area');
        const valThick = document.getElementById('rk-calc-val-thick');
        const valTemp = document.getElementById('rk-calc-val-temp');
        const valPower = document.getElementById('rk-calc-val-power');
        const valLoss = document.getElementById('rk-calc-val-loss');

        // Pobieranie wyników
        const outMass = document.getElementById('rk-calc-out-mass');
        const outEnergy = document.getElementById('rk-calc-out-energy');
        const outTime = document.getElementById('rk-calc-out-time');
        const warningBox = document.getElementById('rk-calc-warning');

        const density = 2200; 
        const specHeat = 0.2778; 

        function formatNumber(num) {
            return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, " ");
        }

        function calculateEngine() {
            // Bezpieczne parsowanie (fallback do 0)
            const area = parseFloat(inArea.value) || 0;
            const thickCm = parseFloat(inThick.value) || 0;
            const deltaT = parseFloat(inTemp.value) || 0;
            const powerKW = parseFloat(inPower.value) || 0;
            const lossKW = parseFloat(inLoss.value) || 0;

            // Update UI (textContent jest bezpieczniejszy dla WordPressa niż innerText)
            valArea.textContent = area;
            valThick.textContent = thickCm;
            valTemp.textContent = deltaT;
            valPower.textContent = powerKW.toFixed(1);
            valLoss.textContent = lossKW.toFixed(1);

            // Obliczenia matematyczne
            const mass = area * (thickCm / 100) * density;
            const energyKWh = (mass * specHeat * deltaT) / 1000;
            const effectivePower = powerKW - lossKW;

            outMass.textContent = formatNumber(Math.round(mass));
            outEnergy.textContent = energyKWh.toFixed(1);

            // Walidacja logiki (Moc musi być większa niż straty)
            if (effectivePower <= 0.0) {
                outTime.textContent = "-";
                warningBox.style.display = "block";
            } else {
                warningBox.style.display = "none";
                const timeHours = energyKWh / effectivePower;
                outTime.textContent = timeHours.toFixed(1);
            }
        }

        // Dodanie podwójnych listenerów dla pełnego pokrycia (input na żywo, change po puszczeniu palca)
        const inputs = [inArea, inThick, inTemp, inPower, inLoss];
        inputs.forEach(input => {
            if (input) {
                input.addEventListener('input', calculateEngine);
                input.addEventListener('change', calculateEngine);
            }
        });

        // Wymuszenie pierwszej kalkulacji
        calculateEngine();
    }

    // Odporne przypięcie skryptu
    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initCalc);
    } else {
        initCalc();
    }
})();
</script>



<style>
:root {
    --rk-err-dark: #0f172a;
    --rk-err-red: #ef4444;
    --rk-err-red-light: #fef2f2;
    --rk-err-orange: #f97316;
    --rk-err-orange-light: #fff7ed;
    --rk-err-blue: #0284c7;
    --rk-err-bg: #ffffff;
    --rk-err-border: #e2e8f0;
    --rk-err-text: #334155;
    --rk-err-muted: #64748b;
}

.rk-errors-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-err-bg);
    border-radius: 20px;
    box-shadow: 0 20px 40px -10px rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
    overflow: hidden;
}

/* Nagłówek */
.rk-err-header {
    background: linear-gradient(135deg, var(--rk-err-dark) 0%, #290a0a 100%);
    padding: 35px 45px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-err-red);
    display: flex;
    align-items: center;
    gap: 25px;
}

.rk-err-alert-icon {
    width: 65px;
    height: 65px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-err-red);
    border: 1px solid rgba(239, 68, 68, 0.3);
    flex-shrink: 0;
    animation: pulseAlert 2s infinite;
}

@keyframes pulseAlert {
    0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4); }
    70% { box-shadow: 0 0 0 15px rgba(239, 68, 68, 0); }
    100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

.rk-err-header h2 {
    font-size: 26px;
    font-weight: 900;
    margin: 0 0 10px 0;
    color: #ffffff;
    line-height: 1.2;
}

.rk-err-header p {
    font-size: 15px;
    color: #fca5a5;
    margin: 0;
    line-height: 1.5;
}

/* Interaktywny Układ (Zakładki/Akordeon) */
.rk-err-container {
    display: grid;
    grid-template-columns: 320px 1fr;
    background: #f8fafc;
}

/* Lista przycisków (Lewa strona na desktopie) */
.rk-err-nav {
    padding: 30px;
    background: #ffffff;
    border-right: 1px solid var(--rk-err-border);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rk-err-btn {
    text-align: left;
    padding: 18px 20px;
    background: var(--rk-err-bg);
    border: 1px solid var(--rk-err-border);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    position: relative;
    overflow: hidden;
}

.rk-err-btn-icon {
    width: 36px;
    height: 36px;
    background: #f1f5f9;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-err-muted);
    transition: all 0.3s ease;
}

.rk-err-btn span {
    font-size: 14px;
    font-weight: 700;
    color: var(--rk-err-text);
    line-height: 1.3;
    transition: color 0.3s ease;
}

.rk-err-btn:hover {
    border-color: #cbd5e1;
    background: #f8fafc;
}

.rk-err-btn.active {
    background: var(--rk-err-red-light);
    border-color: var(--rk-err-red);
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.1);
}

.rk-err-btn.active .rk-err-btn-icon {
    background: var(--rk-err-red);
    color: #ffffff;
}

.rk-err-btn.active span {
    color: var(--rk-err-red);
}

/* BEZWZGLĘDNE UKRYCIE KONTENERÓW MOBILNYCH NA DESKTOPIE */
.rk-err-mobile-content {
    display: none;
}

/* Treść (Prawa strona na desktopie) */
.rk-err-content-area {
    padding: 40px;
    position: relative;
    background: #f8fafc;
}

.rk-err-panel {
    display: none;
    animation: slideInFade 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.rk-err-panel.active {
    display: block;
}

@keyframes slideInFade {
    from { opacity: 0; transform: translateX(15px); }
    to { opacity: 1; transform: translateX(0); }
}

.rk-err-panel h3 {
    font-size: 22px;
    font-weight: 800;
    color: var(--rk-err-dark);
    margin: 0 0 15px 0;
    line-height: 1.3;
}

.rk-err-desc {
    font-size: 15px;
    line-height: 1.7;
    color: var(--rk-err-text);
    margin: 0 0 25px 0;
}

/* Boks "Konsekwencja" */
.rk-err-consequence {
    background: #ffffff;
    border-left: 4px solid var(--rk-err-orange);
    padding: 20px 25px;
    border-radius: 0 12px 12px 0;
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
}

.rk-err-consequence-title {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--rk-err-orange);
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

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

.rk-err-link {
    color: var(--rk-err-blue);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: border-color 0.2s;
}

.rk-err-link:hover {
    border-color: var(--rk-err-blue);
}

/* RWD - Mobile (Akordeon) */
@media (max-width: 768px) {
    .rk-err-header {
        flex-direction: column;
        text-align: center;
        padding: 30px 20px;
    }
    .rk-err-container {
        grid-template-columns: 1fr;
        background: #ffffff;
    }
    .rk-err-nav {
        padding: 20px;
        border-right: none;
    }
    
    .rk-err-content-area {
        display: none; 
    }
    
    /* Na mobile nadajemy style i pozwalamy JS-owi kontrolować wyświetlanie poprzez klasę active na przycisku */
    .rk-err-mobile-content {
        padding: 20px;
        background: #f8fafc;
        border: 1px solid var(--rk-err-red);
        border-top: none;
        border-radius: 0 0 12px 12px;
        margin-top: -10px;
        margin-bottom: 15px;
        animation: fadeIn 0.3s;
    }
    
    .rk-err-btn.active {
        border-radius: 12px 12px 0 0;
        margin-bottom: 0;
    }
    
    .rk-err-btn.active + .rk-err-mobile-content {
        display: block;
    }
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-bledy-wykonawcze",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Najczęstsze błędy instalatorów i inwestorów wydłużające czas nagrzewania podłogówki",
    "description": "Lista krytycznych błędów przy montażu ogrzewania podłogowego, takich jak zbyt cienki styropian, brak dylatacji czy zapowietrzenie układu, które generują potężne straty energii.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-bledy-wykonawcze",
    "name": "Zestawienie krytycznych błędów wykonawczych w systemach płaszczyznowych",
    "description": "Techniczna analiza skutków błędnego montażu instalacji hydraulicznych podposadzkowych, ze szczególnym uwzględnieniem strat cieplnych i uszkodzeń strukturalnych.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "najczęstsze błędy przy montażu ogrzewania podłogowego",
      "ile styropianu pod ogrzewanie podłogowe",
      "izolacja brzegowa i dylatacje w podłogówce",
      "objawy zapowietrzenia ogrzewania podłogowego",
      "plastyfikator do wylewki na podłogówkę"
    ],
    "measurementTechnique": "Analiza empiryczna spadku wydajności i wydłużenia czasu nagrzewania układu w wyniku wad instalacyjnych i materiałowych.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Niedostateczna izolacja gruntu (straty w dół).",
        "Brak stref dylatacyjnych (uszkodzenia mechaniczne).",
        "Powietrze w pętlach (blokada przepływu hydraulicznego).",
        "Zła mieszanka betonowa (powstanie izolatora powietrznego w jastrychu)."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-bledy-wykonawcze",
    "name": "Symulator Skutków Błędów Instalacyjnych",
    "description": "Interaktywny panel demonstrujący ciąg przyczynowo-skutkowy najpoważniejszych błędów podczas wylewania i uruchamiania instalacji ogrzewania podłogowego.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-errors-module" id="bledy-wykonawcze-app">
    <div class="rk-err-header">
        <div class="rk-err-alert-icon">
            <svg width="34" height="34" 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>
        </div>
        <div>
            <h2>Najczęstsze błędy instalatorów i inwestorów</h2>
            <p>Oto lista krytycznych błędów wykonawczych i eksploatacyjnych, które zamieniają komfortowe ogrzewanie podłogowe w powolny, niewydolny i drogi w utrzymaniu system.</p>
        </div>
    </div>

    <div class="rk-err-container">
        <div class="rk-err-nav">
            <button class="rk-err-btn active" data-target="err-1">
                <div class="rk-err-btn-icon">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z"></path><path d="M12 7v5"></path></svg>
                </div>
                <span>Zbyt cienka izolacja<br>termiczna (styropian)</span>
            </button>
            <div class="rk-err-mobile-content" id="mob-err-1"></div>

            <button class="rk-err-btn" data-target="err-2">
                <div class="rk-err-btn-icon">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 3v18h18"></path><path d="m19 9-5 5-4-4-3 3"></path></svg>
                </div>
                <span>Brak taśmy brzegowej<br>i dylatacji jastrychu</span>
            </button>
            <div class="rk-err-mobile-content" id="mob-err-2"></div>

            <button class="rk-err-btn" data-target="err-3">
                <div class="rk-err-btn-icon">
                    <svg width="20" height="20" 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="M8 12h8"></path><path d="M12 8v8"></path></svg>
                </div>
                <span>Zapowietrzenie pętli<br>grzewczych układu</span>
            </button>
            <div class="rk-err-mobile-content" id="mob-err-3"></div>

            <button class="rk-err-btn" data-target="err-4">
                <div class="rk-err-btn-icon">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 3h6v4l-3 4-3-4V3z"></path><path d="M14.5 11 18 16a2 2 0 0 1-1.6 3.2H7.6A2 2 0 0 1 6 16l3.5-5"></path></svg>
                </div>
                <span>Brak plastyfikatora<br>w jastrychu cementowym</span>
            </button>
            <div class="rk-err-mobile-content" id="mob-err-4"></div>
        </div>

        <div class="rk-err-content-area">
            
            <div class="rk-err-panel active" id="err-1">
                <h3>Zastosowanie nieprawidłowej izolacji termicznej pod jastrychem</h3>
                <p class="rk-err-desc">
                    Ułożenie zbyt cienkiej warstwy styropianu EPS100 na gruncie (np. 5 cm zamiast projektowanych 15-20 cm) to kardynalny błąd. Wiele osób zastanawia się <a href="https://projekt-ogrzewania.pl/ile-styropianu-pod-ogrzewanie-podlogowe/" class="rk-err-link">ile styropianu pod ogrzewanie podłogowe</a> należy ułożyć – odpowiedź zawsze musi wynikać z obliczeń współczynnika przenikania ciepła U dla podłogi na gruncie, który wg WT2021 nie może przekroczyć 0,30 W/(m²·K).
                </p>
                <div class="rk-err-consequence">
                    <div class="rk-err-consequence-title">
                        <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                        Bezpośrednia konsekwencja
                    </div>
                    <p>Ciepło zamiast wędrować w górę (do pomieszczenia), ucieka w dół, w głąb gruntu. Podłogówka nagrzewa się bez końca, pochłaniając gigantyczne ilości energii, podczas gdy dolna strefa płyty grzewczej jest stale schładzana przez fundament.</p>
                </div>
            </div>

            <div class="rk-err-panel" id="err-2">
                <h3>Brak lub nieprawidłowe wykonanie szczelin dylatacyjnych</h3>
                <p class="rk-err-desc">
                    Brak wykonania nacięć dylatacyjnych w progach drzwiowych oraz przy powierzchniach przekraczających 40 m² (lub przy długości boku powyżej 8 m) prowadzi do katastrofy. Prawidłowa <a href="https://projekt-ogrzewania.pl/izolacja-brzegowa-i-dylatacje-w-instalacji-ogrzewania-podlogowego/" class="rk-err-link">izolacja brzegowa i dylatacje w instalacji ogrzewania podłogowego</a> to jedyny sposób na skompensowanie rozszerzalności termicznej betonu.
                </p>
                <div class="rk-err-consequence">
                    <div class="rk-err-consequence-title">
                        <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                        Bezpośrednia konsekwencja
                    </div>
                    <p>Brak elastycznej taśmy brzegowej (o grubości min. 8-10 mm) powoduje, że rozszerzająca się nagrzana płyta uderza w ściany konstrukcyjne. Następuje zablokowanie naprężeń, niekontrolowane pękanie wylewki oraz ryzyko zgilotynowania (przerwania) mechanicznego rur grzewczych PEX.</p>
                </div>
            </div>

            <div class="rk-err-panel" id="err-3">
                <h3>Zapowietrzenie pętli grzewczych rozdzielacza</h3>
                <p class="rk-err-desc">
                    Brak rzetelnego odpowietrzenia każdej pętli z osobna przy użyciu zewnętrznej pompy o dużym wydatku na etapie napełniania instalacji wodą z kranu lub zdemineralizowaną. Zignorowanie procedury sprawia, że widoczne są ewidentne <a href="https://projekt-ogrzewania.pl/objawy-zapowietrzenia-ogrzewania-podlogowego/" class="rk-err-link">objawy zapowietrzenia ogrzewania podłogowego</a> na rotametrach i termometrach.
                </p>
                <div class="rk-err-consequence">
                    <div class="rk-err-consequence-title">
                        <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                        Bezpośrednia konsekwencja
                    </div>
                    <p>Korki powietrzne fizycznie blokują przepływ wody. Rotametry w opadają do zera (przepływ 0 l/min). Woda krąży tylko przez najkrótsze, najmniejsze pętle, podczas gdy zapowietrzone pomieszczenia pozostają całkowicie zimne, niezależnie od tego, jak mocno grzeje źródło ciepła.</p>
                </div>
            </div>

            <div class="rk-err-panel" id="err-4">
                <h3>Brak chemii budowlanej (plastyfikatora) w jastrychu</h3>
                <p class="rk-err-desc">
                    Wylanie mieszanki betonowej z tzw. "miksokreta" bez zastosowania odpowiedniej chemii. Idealna <a href="https://projekt-ogrzewania.pl/wylewka-betonowa-na-ogrzewanie-podlogowe/" class="rk-err-link">wylewka betonowa na ogrzewanie podłogowe</a> wymaga dedykowanego plastyfikatora, który redukuje ilość wody zarobowej i uelastycznia zaprawę otulającą rurę.
                </p>
                <div class="rk-err-consequence">
                    <div class="rk-err-consequence-title">
                        <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                        Bezpośrednia konsekwencja
                    </div>
                    <p>Bez chemii powstaje suchy, porowaty beton o bardzo niskiej gęstości z tysiącami mikropustek powietrznych wewnątrz struktury. Powietrze to doskonały izolator – drastycznie obniża on przewodność cieplną wylewki, przez co czas nagrzewania podłogi wydłuża się co najmniej dwukrotnie.</p>
                </div>
            </div>

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

<script>
document.addEventListener('DOMContentLoaded', function() {
    const errorBtns = document.querySelectorAll('#bledy-wykonawcze-app .rk-err-btn');
    const desktopPanels = document.querySelectorAll('#bledy-wykonawcze-app .rk-err-panel');

    // Kopiowanie treści paneli do kontenerów mobilnych
    desktopPanels.forEach((panel, index) => {
        const mobContainer = document.getElementById(`mob-err-${index + 1}`);
        if(mobContainer) {
            mobContainer.innerHTML = panel.innerHTML;
        }
    });

    errorBtns.forEach(btn => {
        btn.addEventListener('click', function() {
            const targetId = this.getAttribute('data-target');
            
            if (window.innerWidth <= 768) {
                if (this.classList.contains('active')) {
                    this.classList.remove('active');
                    return;
                }
            }

            // Reset aktywnych przycisków
            errorBtns.forEach(b => b.classList.remove('active'));
            this.classList.add('active');

            // Aktywacja paneli na desktopie
            desktopPanels.forEach(panel => {
                panel.classList.remove('active');
                if (panel.id === targetId) {
                    panel.classList.add('active');
                }
            });
        });
    });
});
</script>



<style>
:root {
    --rk-proj-dark: #0f172a;
    --rk-proj-darker: #020617;
    --rk-proj-blue: #0284c7;
    --rk-proj-blue-light: #e0f2fe;
    --rk-proj-accent: #38bdf8;
    --rk-proj-bg: #ffffff;
    --rk-proj-border: #cbd5e1;
    --rk-proj-text: #334155;
    --rk-proj-muted: #64748b;
}

.rk-blueprint-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-proj-bg);
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(2, 132, 199, 0.15);
    border: 1px solid var(--rk-proj-blue);
    overflow: hidden;
}

/* Nagłówek w stylu Blueprint z poprawionym tłem warstwowym */
.rk-proj-header {
    background-color: var(--rk-proj-dark);
    background-image: 
        linear-gradient(rgba(56, 189, 248, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(56, 189, 248, 0.08) 1px, transparent 1px),
        linear-gradient(135deg, var(--rk-proj-darker) 0%, var(--rk-proj-dark) 100%);
    background-size: 20px 20px, 20px 20px, 100% 100%;
    padding: 45px 50px;
    color: #ffffff;
    position: relative;
    border-bottom: 5px solid var(--rk-proj-blue);
}

.rk-proj-header h2 {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
    color: #ffffff;
    position: relative;
    z-index: 2;
}

.rk-proj-header p {
    font-size: 16px;
    color: #94a3b8;
    margin: 0;
    line-height: 1.6;
    position: relative;
    z-index: 2;
}

/* Interaktywna Konsola */
.rk-proj-console {
    padding: 40px 50px;
    background: #f8fafc;
}

.rk-proj-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    margin-bottom: 30px;
}

.rk-proj-card {
    background: var(--rk-proj-bg);
    border: 2px solid var(--rk-proj-border);
    border-radius: 16px;
    padding: 30px;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.rk-proj-card:hover {
    border-color: var(--rk-proj-accent);
    transform: translateY(-5px);
    box-shadow: 0 15px 30px -10px rgba(2, 132, 199, 0.2);
}

.rk-proj-card.active {
    border-color: var(--rk-proj-blue);
    background: var(--rk-proj-blue-light);
    box-shadow: 0 0 0 4px rgba(2, 132, 199, 0.1);
}

.rk-card-icon {
    width: 54px;
    height: 54px;
    background: var(--rk-proj-dark);
    color: var(--rk-proj-accent);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.rk-proj-card.active .rk-card-icon {
    background: var(--rk-proj-blue);
    color: #ffffff;
    transform: scale(1.1);
}

.rk-proj-card h3 {
    font-size: 18px;
    font-weight: 800;
    color: var(--rk-proj-dark);
    margin: 0 0 10px 0;
    line-height: 1.3;
}

.rk-proj-card p.rk-card-subtitle {
    font-size: 14px;
    color: var(--rk-proj-muted);
    margin: 0;
    font-weight: 600;
}

/* Szuflady z Detalami (Drawers) */
.rk-proj-drawers {
    position: relative;
}

.rk-proj-drawer {
    display: none;
    background: var(--rk-proj-bg);
    border: 1px solid var(--rk-proj-border);
    border-radius: 16px;
    padding: 35px;
    animation: drawerOpen 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
    box-shadow: 0 10px 25px -5px rgba(0,0,0,0.05);
}

.rk-proj-drawer.active {
    display: block;
}

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

.rk-drawer-content {
    font-size: 16px;
    line-height: 1.7;
    color: var(--rk-proj-text);
}

.rk-drawer-content p {
    margin: 0 0 15px 0;
}

.rk-drawer-content p:last-child {
    margin: 0;
}

.rk-proj-link {
    color: var(--rk-proj-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s;
}

.rk-proj-link:hover {
    color: var(--rk-proj-dark);
}

.rk-tech-badge {
    display: inline-block;
    background: #f1f5f9;
    color: var(--rk-proj-dark);
    padding: 2px 8px;
    border-radius: 6px;
    font-family: monospace;
    font-size: 14px;
    font-weight: 700;
    border: 1px solid #e2e8f0;
}

/* Mocne CTA */
.rk-proj-cta-section {
    background: var(--rk-proj-bg);
    padding: 45px 50px;
    text-align: center;
    border-top: 1px solid var(--rk-proj-border);
}

.rk-proj-cta-section h4 {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-proj-dark);
    margin: 0 0 25px 0;
}

.rk-btn-blueprint {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    background: var(--rk-proj-dark);
    color: var(--rk-proj-accent);
    font-size: 18px;
    font-weight: 800;
    padding: 20px 45px;
    border-radius: 14px;
    text-decoration: none;
    box-shadow: 0 15px 30px -10px rgba(15, 23, 42, 0.4);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid transparent;
}

.rk-btn-blueprint:hover {
    transform: translateY(-4px);
    background: var(--rk-proj-darker);
    border-color: var(--rk-proj-accent);
    box-shadow: 0 20px 40px -10px rgba(56, 189, 248, 0.4);
    color: #ffffff;
}

.rk-btn-blueprint svg {
    transition: transform 0.3s;
}

.rk-btn-blueprint:hover svg {
    transform: translateX(5px);
}

/* RWD - Mobile */
@media (max-width: 768px) {
    .rk-proj-header, .rk-proj-console, .rk-proj-cta-section {
        padding: 30px 25px;
    }
    
    .rk-proj-cards {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .rk-proj-drawer {
        padding: 25px;
        margin-top: -10px;
        border-radius: 0 0 16px 16px;
        border-top: none;
    }
    
    .rk-proj-card.active {
        border-radius: 16px 16px 0 0;
        transform: none;
    }
    
    .rk-proj-card:hover {
        transform: none;
    }
    
    .rk-btn-blueprint {
        width: 100%;
        padding: 18px 20px;
        font-size: 16px;
    }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-wplyw-projektu",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Jak czas nagrzewania podłogówki wpływa na profesjonalny projekt instalacji grzewczej?",
    "description": "Zobacz, jak obliczenia OZC, dobór pompy obiegowej i rozstaw rur definują czas reakcji systemu podłogowego. Profesjonalne parametry hydrauliczne.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-wplyw-projektu",
    "name": "Wpływ parametrów hydraulicznych na czas nagrzewania",
    "description": "Zestawienie analityczne korelacji pomiędzy inżynierskimi decyzjami projektowymi a dynamiką pracy wodnego ogrzewania podłogowego.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "projekt instalacji ogrzewania podłogowego",
      "obliczeniowe zapotrzebowanie na ciepło OZC",
      "rozstaw rur w ogrzewaniu podłogowym",
      "maksymalna długość pętli podłogówki",
      "dobór pompy obiegowej do podłogówki"
    ],
    "measurementTechnique": "Wykorzystanie oprogramowania inżynierskiego (Instal-System, Audytor OZC) do modelowania przepływów hydraulicznych i natężenia strat cieplnych.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Bilans wg PN-EN 12831: Redukcja rozstawu rur w strefach brzegowych do 10 cm.",
        "Optymalizacja hydrauliczna: Ograniczenie pętli (rura 16x2.0 mm) i wymuszenie przepływu 1.5-2.5 l/min."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-wplyw-projektu",
    "name": "Konsola Parametrów Projektowych",
    "description": "Interaktywny moduł edukacyjny wyjaśniający, jak profesjonalny inżynier dopasowuje OZC i opory hydrauliczne, aby zoptymalizować bezwładność cieplną.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-blueprint-module" id="projekt-blueprint-app">
    <div class="rk-proj-header">
        <h2>Jak czas nagrzewania podłogówki wpływa na profesjonalny projekt?</h2>
        <p>Bezwładność cieplna to nie jest wyrok. To mierzalny parametr wyjściowy, który bezwzględnie determinuje proces projektowania instalacji płaszczyznowej w zaawansowanych programach inżynierskich.</p>
    </div>

    <div class="rk-proj-console">
        <div class="rk-proj-cards">
            <div class="rk-proj-card active" data-tab="tab-ozc" id="card-ozc">
                <div class="rk-card-icon">
                    <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="M2 20h.01"></path><path d="M7 20v-4"></path><path d="M12 20v-8"></path><path d="M17 20V8"></path><path d="M22 4v16"></path></svg>
                </div>
                <h3>Powiązanie z OZC</h3>
                <p class="rk-card-subtitle">Obliczeniowe Zapotrzebowanie na Ciepło</p>
            </div>
            <div class="rk-proj-drawer rk-mob-drawer" id="mob-tab-ozc"></div>

            <div class="rk-proj-card" data-tab="tab-hydro" id="card-hydro">
                <div class="rk-card-icon">
                    <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="M12 2v20"></path><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                </div>
                <h3>Regulacja i Przepływy</h3>
                <p class="rk-card-subtitle">Opory pętli i dobór pompy</p>
            </div>
            <div class="rk-proj-drawer rk-mob-drawer" id="mob-tab-hydro"></div>
        </div>

        <div class="rk-proj-drawers" id="desktop-drawers">
            
            <div class="rk-proj-drawer active" id="tab-ozc">
                <div class="rk-drawer-content">
                    <p>Projektant nigdy nie dobiera układu rur „z katalogu”. Kluczem jest jednostkowe obciążenie cieplne danego pomieszczenia <span class="rk-tech-badge">W/m²</span>, wyznaczone z rzetelnego <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/" class="rk-proj-link">bilansu strat OZC</a> (wg normy <a href="https://projekt-ogrzewania.pl/norma-pn-en-12831-klucz-do-efektywnego-i-komfortowego-ogrzewania-podlogowego/" class="rk-proj-link">PN-EN 12831</a>).</p>
                    <p>Jeśli pokój ma wysokie straty ciepła (np. salon z ogromnymi przeszkleniami), projektant zmuszony jest zagęścić <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-wodnym-ogrzewaniu-podlogowym/" class="rk-proj-link">rozstaw rur</a> do 10 cm lub zaprojektować osobną, niezależną <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/" class="rk-proj-link">strefę brzegową</a> wzdłuż okien. Zwiększa to średnią temperaturę płyty i drastycznie skraca czas reakcji układu na nagłe wychłodzenie wywołane infiltracją zimnego powietrza.</p>
                </div>
            </div>

            <div class="rk-proj-drawer" id="tab-hydro">
                <div class="rk-drawer-content">
                    <p>Zbyt długa pętla grzewcza (przekraczająca <a href="https://projekt-ogrzewania.pl/maksymalna-dlugosc-petli-ogrzewania-podlogowego/" class="rk-proj-link">maksymalną długość</a> np. 100-120 m dla standardowej rury <span class="rk-tech-badge">16 x 2.0 mm</span>) generuje gigantyczne opory hydrauliczne. Powoduje to drastyczny spadek przepływu masowego medium.</p>
                    <p>Przy słabym przepływie woda oddaje całe ciepło na początku pętli, a końcówka strefy pozostaje zimna, co wydłuża czas nagrzewania tej części pokoju do kilkunastu godzin! Prawidłowy projekt ściśle definiuje nastawy wstępne na rotometrach rozdzielacza (np. <span class="rk-tech-badge">1.5 - 2.5 l/min</span>), gwarantując równomierne nasycenie wylewki energią, oraz określa wymaganą wysokość podnoszenia <a href="https://projekt-ogrzewania.pl/pompa-obiegowa-w-instalacji-ogrzewania-podlogowego/" class="rk-proj-link">pompy obiegowej</a> (np. <span class="rk-tech-badge">6 mH₂O</span>), eliminując ryzyko powstania martwych stref grzewczych.</p>
                </div>
            </div>

        </div>
    </div>

    <div class="rk-proj-cta-section">
        <h4>Nie ryzykuj błędów. Zbuduj podłogówkę na precyzyjnych obliczeniach.</h4>
        <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" class="rk-btn-blueprint">
            ZAMÓW PROJEKT OGRZEWANIA PODŁOGOWEGO
            <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="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>
        </a>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const cards = document.querySelectorAll('#projekt-blueprint-app .rk-proj-card');
    const desktopDrawers = document.querySelectorAll('#projekt-blueprint-app #desktop-drawers .rk-proj-drawer');
    const desktopDrawersContainer = document.getElementById('desktop-drawers');
    
    // Kopiowanie zawartości na potrzeby widoku mobilnego (akordeon)
    const cloneToMobile = () => {
        desktopDrawers.forEach(drawer => {
            const mobTarget = document.getElementById('mob-' + drawer.id);
            if(mobTarget) {
                mobTarget.innerHTML = drawer.innerHTML;
            }
        });
    };
    cloneToMobile();

    cards.forEach(card => {
        card.addEventListener('click', function() {
            const targetTab = this.getAttribute('data-tab');
            const isMobile = window.innerWidth <= 768;

            // Logika dla urządzeń mobilnych (zamykanie aktywnej karty)
            if (isMobile) {
                if (this.classList.contains('active')) {
                    this.classList.remove('active');
                    const activeMobDrawer = document.getElementById('mob-' + targetTab);
                    if(activeMobDrawer) {
                        activeMobDrawer.classList.remove('active');
                    }
                    return; // Zakończ, jeśli tylko zamykamy
                }
            }

            // Reset wszystkich kart i szuflad (mobilnych i desktopowych)
            cards.forEach(c => c.classList.remove('active'));
            desktopDrawers.forEach(d => d.classList.remove('active'));
            document.querySelectorAll('#projekt-blueprint-app .rk-mob-drawer').forEach(md => md.classList.remove('active'));

            // Aktywacja klikniętej karty
            this.classList.add('active');

            if (isMobile) {
                // Pokazujemy szufladę mobilną bezpośrednio pod kartą
                desktopDrawersContainer.style.display = 'none';
                const mobDrawer = document.getElementById('mob-' + targetTab);
                if(mobDrawer) {
                    mobDrawer.classList.add('active');
                }
            } else {
                // Pokazujemy szufladę desktopową w dolnej strefie
                desktopDrawersContainer.style.display = 'block';
                const deskDrawer = document.getElementById(targetTab);
                if(deskDrawer) {
                    deskDrawer.classList.add('active');
                }
            }
        });
    });

    // Nasłuchuj na zmianę rozmiaru okna, by zresetować widoki przy przejściu mobile <-> desktop
    window.addEventListener('resize', function() {
        const activeCard = document.querySelector('#projekt-blueprint-app .rk-proj-card.active');
        if (activeCard) {
            const targetTab = activeCard.getAttribute('data-tab');
            if (window.innerWidth <= 768) {
                desktopDrawersContainer.style.display = 'none';
                document.querySelectorAll('#projekt-blueprint-app .rk-mob-drawer').forEach(md => md.classList.remove('active'));
                const mobDrawer = document.getElementById('mob-' + targetTab);
                if(mobDrawer) mobDrawer.classList.add('active');
            } else {
                desktopDrawersContainer.style.display = 'block';
                document.querySelectorAll('#projekt-blueprint-app .rk-mob-drawer').forEach(md => md.classList.remove('active'));
                desktopDrawers.forEach(d => d.classList.remove('active'));
                const deskDrawer = document.getElementById(targetTab);
                if(deskDrawer) deskDrawer.classList.add('active');
            }
        }
    });
});
</script>



<style>
:root {
    --rk-case-dark: #0f172a;
    --rk-case-blue: #0284c7;
    --rk-case-blue-light: #f0f9ff;
    --rk-case-accent: #38bdf8;
    --rk-case-bg: #ffffff;
    --rk-case-gray: #f8fafc;
    --rk-case-border: #e2e8f0;
    --rk-case-text: #334155;
    
    --rk-case-red: #ef4444;
    --rk-case-red-bg: #fef2f2;
    --rk-case-green: #10b981;
    --rk-case-green-bg: #ecfdf5;
    --rk-case-gold: #b45309;
}

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

/* Nagłówek Case Study */
.rk-case-header {
    background: var(--rk-case-dark);
    padding: 45px 50px;
    color: #ffffff;
    border-bottom: 4px solid var(--rk-case-blue);
    position: relative;
    overflow: hidden;
}

.rk-case-header::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: 
        linear-gradient(rgba(56, 189, 248, 0.1) 1px, transparent 1px),
        linear-gradient(90deg, rgba(56, 189, 248, 0.1) 1px, transparent 1px);
    background-size: 20px 20px;
    opacity: 0.8;
}

.rk-case-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(56, 189, 248, 0.2);
    color: var(--rk-case-accent);
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
    position: relative;
    z-index: 2;
    border: 1px solid rgba(56, 189, 248, 0.3);
}

.rk-case-header h2 {
    font-size: 30px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.3;
    color: #ffffff;
    position: relative;
    z-index: 2;
}

.rk-case-header p {
    font-size: 16px;
    color: #cbd5e1;
    margin: 0;
    line-height: 1.6;
    position: relative;
    z-index: 2;
}

/* Interfejs Przełącznika */
.rk-case-ui {
    background: var(--rk-case-gray);
    padding: 40px 50px;
    border-bottom: 1px solid var(--rk-case-border);
}

.rk-case-toggle {
    display: flex;
    background: #e2e8f0;
    padding: 8px;
    border-radius: 16px;
    margin-bottom: 35px;
    position: relative;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.rk-case-btn {
    flex: 1;
    padding: 16px 15px;
    border: none;
    background: transparent;
    font-size: 16px;
    font-weight: 800;
    color: #64748b;
    cursor: pointer;
    border-radius: 12px;
    position: relative;
    z-index: 2;
    transition: color 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.rk-case-btn.active { color: var(--rk-case-dark); }

.rk-case-slider {
    position: absolute;
    top: 8px; bottom: 8px; left: 8px;
    width: calc(50% - 8px);
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.rk-case-btn[data-scenario="pro"].active ~ .rk-case-slider {
    transform: translateX(100%);
}

/* Widoki Scenariuszy */
.rk-scenario-view {
    display: none;
    animation: fadeInCase 0.4s ease forwards;
}

.rk-scenario-view.active { display: block; }

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

/* Dashboard Wyników */
.rk-case-dashboard {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-bottom: 25px;
}

.rk-case-metric {
    background: #ffffff;
    border: 2px solid var(--rk-case-border);
    border-radius: 16px;
    padding: 25px 20px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all 0.3s;
}

.rk-metric-bad { border-color: var(--rk-case-red); background: var(--rk-case-red-bg); }
.rk-metric-good { border-color: var(--rk-case-green); background: var(--rk-case-green-bg); }

.rk-case-metric-icon {
    margin-bottom: 12px;
    display: flex;
    justify-content: center;
}

.rk-metric-bad .rk-case-metric-icon { color: var(--rk-case-red); }
.rk-metric-good .rk-case-metric-icon { color: var(--rk-case-green); }

.rk-case-metric-title {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 1px;
    color: var(--rk-case-text);
    margin-bottom: 8px;
}

.rk-case-metric-val {
    font-size: 28px;
    font-weight: 900;
    color: var(--rk-case-dark);
    font-family: monospace;
}

.rk-metric-bad .rk-case-metric-val { color: #991b1b; }
.rk-metric-good .rk-case-metric-val { color: #065f46; }

/* Raport Podsumowujący w UI */
.rk-case-report {
    background: #ffffff;
    border: 1px solid var(--rk-case-border);
    border-radius: 16px;
    padding: 25px 30px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.03);
}

.rk-report-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.report-bad .rk-report-icon { background: var(--rk-case-red-bg); color: var(--rk-case-red); }
.report-good .rk-report-icon { background: var(--rk-case-green-bg); color: var(--rk-case-green); }

.rk-report-text h4 {
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 8px 0;
    color: var(--rk-case-dark);
}

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

.rk-highlight-roi {
    display: inline-block;
    background: var(--rk-case-gold);
    color: #ffffff;
    padding: 4px 10px;
    border-radius: 6px;
    font-weight: 800;
    margin-top: 10px;
    font-size: 14px;
}

/* Treść Artykułu / Rozwinięcie */
.rk-case-content {
    padding: 45px 50px;
}

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

.rk-case-content p:last-child { margin: 0; }

.rk-case-content h3 {
    font-size: 22px;
    font-weight: 900;
    color: var(--rk-case-dark);
    margin: 35px 0 15px 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.rk-case-content h3 svg { color: var(--rk-case-blue); }

.rk-inline-link {
    color: var(--rk-case-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s;
}
.rk-inline-link:hover { color: var(--rk-case-dark); }

/* RWD */
@media (max-width: 768px) {
    .rk-case-header, .rk-case-ui, .rk-case-content { padding: 30px 20px; }
    .rk-case-toggle { flex-direction: column; background: transparent; padding: 0; }
    .rk-case-slider { display: none; }
    .rk-case-btn { background: #e2e8f0; border: 1px solid var(--rk-case-border); margin-bottom: 10px; width: 100%; }
    .rk-case-btn.active { background: #ffffff; border-color: var(--rk-case-blue); box-shadow: 0 4px 10px rgba(0,0,0,0.05); }
    
    .rk-case-dashboard { grid-template-columns: 1fr; gap: 15px; }
    .rk-case-report { flex-direction: column; text-align: center; align-items: center; padding: 25px 20px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-casestudy",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Case Study: Analiza porównawcza kosztów eksploatacji ogrzewania podłogowego",
    "description": "Zestawienie rzeczywistych oszczędności na kosztach ogrzewania w domu 150 m2. Porównanie instalacji z projektem OZC i bezwładnością układu na tle montażu amatorskiego.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-casestudy",
    "name": "Eksploatacyjne ROI Projektu Ogrzewania Podłogowego",
    "description": "Zestawienie danych wskaźnikowych COP pompy ciepła, czasu nagrzewania oraz kosztów rocznych w zależności od poprawności wylewki i rozstawu rur.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "rzeczywiste oszczędności na kosztach ogrzewania w skali roku",
      "koszt ogrzewania domu 2025",
      "projektowe obciążenie cieplne ozc",
      "niska temperatura zasilania pompy ciepła dlaczego 35 stopni to ideał dla podłogówki",
      "ile kosztuje 100 m² ogrzewania podłogowego"
    ],
    "measurementTechnique": "Modelowanie kosztów i wydajności w oparciu o różnicę sprawności SCOP dla parametrów zasilania 45°C (błędy instalacyjne) vs 35°C (zoptymalizowany projekt OZC).",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Wariant bez projektu: zasilanie 45°C, COP 2.8, roczny koszt ogrzewania o około 2100 zł wyższy.",
        "Wariant Inżynierski: zasilanie 35°C, COP 4.6, pełna kontrola nad bezwładnością jastrychu.",
        "Koszt dokumentacji projektowej (średnio 550 PLN) zwraca się w pierwszym kwartale zimy."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-casestudy",
    "name": "Symulator Kosztów: Amator vs Inżynier",
    "description": "Interaktywny kokpit analityczny ukazujący skutki błędów instalacyjnych w kontekście zużycia energii elektrycznej przez pompę ciepła.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-case-module" id="case-study-app">
    
    <div class="rk-case-header">
        <div class="rk-case-badge">Case Study – Budowa bez ściemy</div>
        <h2>Jak 550 zł wydane na projekt ratuje tysiące w sezonie?</h2>
        <p>Zestawiamy dwa identyczne domy 150 m² z pompą ciepła. Jeden zrobiony na pamięć, drugi oparty na inżynierskim bilansie. Zobacz twarde dane o bezwładności i rachunkach.</p>
    </div>

    <div class="rk-case-ui">
        <!-- Przełącznik -->
        <div class="rk-case-toggle">
            <button class="rk-case-btn active" data-scenario="amator">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><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>
                Wariant A: Zrobione "Na Oko"
            </button>
            <button class="rk-case-btn" data-scenario="pro">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                Wariant B: Projekt Inżynierski (OZC)
            </button>
            <div class="rk-case-slider"></div>
        </div>

        <!-- WIDOK: AMATOR -->
        <div class="rk-scenario-view active" id="scenario-amator">
            <div class="rk-case-dashboard">
                <div class="rk-case-metric rk-metric-bad">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    </div>
                    <div class="rk-case-metric-title">Czas nagrzewania</div>
                    <div class="rk-case-metric-val">14 godz.</div>
                </div>
                <div class="rk-case-metric rk-metric-bad">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M12 2v20"></path><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                    </div>
                    <div class="rk-case-metric-title">Zasilanie (Spadek COP)</div>
                    <div class="rk-case-metric-val">45 °C</div>
                </div>
                <div class="rk-case-metric rk-metric-bad">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                    </div>
                    <div class="rk-case-metric-title">Koszt roczny (Szacunek)</div>
                    <div class="rk-case-metric-val">+ 2 100 zł</div>
                </div>
            </div>
            
            <div class="rk-case-report report-bad">
                <div class="rk-report-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
                </div>
                <div class="rk-report-text">
                    <h4>Brak kontroli nad bezwładnością</h4>
                    <p>Wylewka wylana grubo "żeby zakryć kable" (10 cm), rozstaw rur wszędzie stały 15 cm. Brak dogrzania okien wymusił podbicie temperatury zasilania do 45°C. System działa z gigantycznym opóźnieniem, a pompa ciepła "taktuje" i pracuje w strefie drastycznie niskiego COP.</p>
                </div>
            </div>
        </div>

        <!-- WIDOK: PRO (OZC) -->
        <div class="rk-scenario-view" id="scenario-pro">
            <div class="rk-case-dashboard">
                <div class="rk-case-metric rk-metric-good">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>
                    </div>
                    <div class="rk-case-metric-title">Czas reakcji</div>
                    <div class="rk-case-metric-val">~ 6 godz.</div>
                </div>
                <div class="rk-case-metric rk-metric-good">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M12 2v20"></path><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                    </div>
                    <div class="rk-case-metric-title">Idealne Zasilanie</div>
                    <div class="rk-case-metric-val">35 °C</div>
                </div>
                <div class="rk-case-metric rk-metric-good">
                    <div class="rk-case-metric-icon">
                        <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
                    </div>
                    <div class="rk-case-metric-title">Oszczędności</div>
                    <div class="rk-case-metric-val">Maksymalne</div>
                </div>
            </div>
            
            <div class="rk-case-report report-good">
                <div class="rk-report-icon">
                    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="20 6 9 17 4 12"></polyline></svg>
                </div>
                <div class="rk-report-text">
                    <h4>Precyzyjna fizyka budowli</h4>
                    <p>Zastosowano optymalne grubości betonu nad rurą. Rozstaw rur zmienny (zagęszczenia 10 cm przy oknach) dopasowany idealnie do bilansu OZC. Przepływy wykalibrowane na rotametrach. <a href="https://projekt-ogrzewania.pl/niska-temperatura-zasilania-pompy-ciepla-dlaczego-35-stopni-to-ideal-dla-podlogowki/" class="rk-inline-link" style="color:#065f46;">Zasilanie 35°C</a> wyciąga z pompy ciepła najwyższe, katalogowe SCOP.</p>
                    <div class="rk-highlight-roi">Projekt za średnio 550 zł zwrócił się w 3 miesiące zimy!</div>
                </div>
            </div>
        </div>
    </div>

    <!-- Treść Teoretyczna -->
    <div class="rk-case-content">
        <p>Powyższe dane to nie teoria, a bolesna, placowa rzeczywistość polskiego budownictwa. Inwestorzy często stają przed pytaniem <a href="https://projekt-ogrzewania.pl/ile-kosztuje-100-m%c2%b2-ogrzewania-podlogowego/" class="rk-inline-link">ile kosztuje wykonanie ogrzewania podłogowego</a>, szukając oszczędności rzędu kilkuset złotych na braku dokumentacji projektowej.</p>
        
        <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="M21.21 15.89A10 10 0 1 1 8 2.83"></path><path d="M22 12A10 10 0 0 0 12 2v10z"></path></svg>
            Dlaczego "Na Oko" tak słabo działa?
        </h3>
        <p>Układając instalację uniwersalnie, tracimy całkowicie kontrolę nad <strong>bezwładnością cieplną</strong> i fizyką przepływów. Jeżeli salon z dużymi oknami tarasowymi ma ogromne zapotrzebowanie na moc w strefie brzegowej, a rury położono standardowo co 15 cm, podłoga po prostu nie da rady wypromieniować odpowiedniej ilości energii przy niskim zasilaniu.</p>
        
        <p>System, chcąc pokryć brakującą moc, zmusza źródło ciepła do drastycznego podbicia temperatury zasilania (np. z optymalnych 35°C na 45°C). Dla nowoczesnej pompy ciepła to wyrok – jej sprężarka wpada w strefę krytycznie niskiej sprawności (często ratując się grzałkami elektrycznymi). A <a href="https://projekt-ogrzewania.pl/rzeczywiste-oszczednosci-na-kosztach-ogrzewania-w-skali-roku-analiza-rozstawu-rur-dla-domu-150-m%c2%b2/" class="rk-inline-link">rzeczywiste oszczędności na kosztach ogrzewania w skali roku</a> ulatniają się wraz z kolejnym rachunkiem za prąd.</p>

        <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"><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>
            Magia Projektowego Obciążenia Cieplnego (OZC)
        </h3>
        <p>Rzetelne obliczenie <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/" class="rk-inline-link">projektowego obciążenia cieplnego OZC</a> pozwala inżynierowi idealnie „uszyć” podłogówkę pod konkretne straty budynku. Modulując rozstaw rur i kalibrując dławienie na poszczególnych pętlach, tworzymy układ idealnie płaski hydraulicznie.</p>
        
        <p>Gdy weźmiesz pod uwagę dzisiejszy <a href="https://projekt-ogrzewania.pl/koszt-ogrzewania-domu-2025/" class="rk-inline-link">koszt ogrzewania domu</a>, średni koszt wykonania profesjonalnej dokumentacji technicznej hydrauliki rzędu 550 PLN staje się najszybciej zwracającą się inwestycją na całej budowie.</p>
    </div>
</div>

<script>
// Bezpieczne przełączanie bez &&
(function() {
    function initCaseStudy() {
        var moduleBox = document.getElementById('case-study-app');
        if (!moduleBox) return;

        var btns = moduleBox.querySelectorAll('.rk-case-btn');
        var views = moduleBox.querySelectorAll('.rk-scenario-view');

        for (var i = 0; i < btns.length; i++) {
            btns[i].addEventListener('click', function() {
                var targetScenario = this.getAttribute('data-scenario');
                
                // Zabezpieczenie przed klikaniem aktywnego na mobile (by się nie zwinęło)
                if (window.innerWidth <= 768) {
                    if (this.classList.contains('active')) {
                        return;
                    }
                }

                // Reset stanu
                for (var j = 0; j < btns.length; j++) {
                    btns[j].classList.remove('active');
                }
                for (var k = 0; k < views.length; k++) {
                    views[k].classList.remove('active');
                }

                // Aktywacja nowego stanu
                this.classList.add('active');
                var activeView = document.getElementById('scenario-' + targetScenario);
                if (activeView) {
                    activeView.classList.add('active');
                }
            });
        }
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initCaseStudy);
    } else {
        initCaseStudy();
    }
})();
</script>



<style>
:root {
    --rk-auth-dark: #0f172a;
    --rk-auth-blue: #0284c7;
    --rk-auth-bg: #ffffff;
    --rk-auth-gray: #f8fafc;
    --rk-auth-border: #e2e8f0;
    --rk-auth-text: #334155;
    --rk-auth-gold: #b45309;
    --rk-auth-gold-light: #fef3c7;
}

.rk-author-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-auth-bg);
    border-radius: 20px;
    border: 2px solid var(--rk-auth-dark);
    box-shadow: 0 15px 35px -10px rgba(15, 23, 42, 0.15);
    overflow: hidden;
    /* CELOWO BRAK ANIMACJI - Czysty, błyskawiczny interfejs */
}

/* Układ główny - 2 kolumny */
.rk-auth-grid {
    display: flex;
    flex-wrap: nowrap;
}

/* Lewa kolumna - Profil */
.rk-auth-profile {
    width: 320px;
    background: var(--rk-auth-dark);
    padding: 45px 30px;
    text-align: center;
    color: #ffffff;
    flex-shrink: 0;
    border-right: 1px solid var(--rk-auth-border);
}

.rk-auth-photo {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 4px solid var(--rk-auth-bg);
    margin: 0 auto 20px;
    overflow: hidden;
    background: var(--rk-auth-gray);
    box-shadow: 0 10px 20px rgba(0,0,0,0.3);
}

.rk-auth-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.rk-auth-name {
    font-size: 24px;
    font-weight: 900;
    margin: 0 0 5px 0;
    color: #ffffff;
    letter-spacing: -0.5px;
}

.rk-auth-title {
    font-size: 13px;
    color: var(--rk-auth-accent, #38bdf8);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 25px;
}

.rk-auth-socials {
    display: flex;
    justify-content: center;
    gap: 15px;
}

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

.rk-social-btn:hover {
    background: var(--rk-auth-blue);
    border-color: var(--rk-auth-blue);
}

/* Prawa kolumna - Treść */
.rk-auth-content {
    flex-grow: 1;
    padding: 45px;
    display: flex;
    flex-direction: column;
    background: var(--rk-auth-bg);
}

.rk-auth-h2 {
    font-size: 26px;
    font-weight: 900;
    color: var(--rk-auth-dark);
    margin: 0 0 25px 0;
    line-height: 1.3;
}

/* Cytat Autorytetu */
.rk-auth-quote-box {
    background: var(--rk-auth-gold-light);
    border-left: 5px solid var(--rk-auth-gold);
    padding: 25px 30px;
    border-radius: 0 12px 12px 0;
    margin-bottom: 35px;
    position: relative;
}

.rk-auth-quote-icon {
    position: absolute;
    top: -15px;
    left: 20px;
    background: var(--rk-auth-gold);
    color: #ffffff;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 24px;
    font-family: serif;
    font-weight: bold;
    line-height: 1;
}

.rk-auth-quote-text {
    font-size: 17px;
    font-weight: 700;
    font-style: italic;
    color: #92400e;
    line-height: 1.6;
    margin: 0;
}

/* Interaktywne Zakładki (Statyczne, bez animacji CSS) */
.rk-auth-tabs {
    display: flex;
    gap: 5px;
    border-bottom: 2px solid var(--rk-auth-border);
    margin-bottom: 25px;
}

.rk-tab-btn {
    padding: 12px 24px;
    background: transparent;
    border: none;
    border-bottom: 3px solid transparent;
    font-size: 15px;
    font-weight: 800;
    color: var(--rk-auth-muted, #64748b);
    cursor: pointer;
    margin-bottom: -2px;
}

.rk-tab-btn.active {
    color: var(--rk-auth-dark);
    border-bottom-color: var(--rk-auth-blue);
}

.rk-tab-panel {
    display: none; 
}

.rk-tab-panel.active {
    display: block; 
}

.rk-panel-text {
    font-size: 15px;
    line-height: 1.7;
    color: var(--rk-auth-text);
}

.rk-panel-text ul {
    margin: 15px 0 0 20px;
    padding: 0;
}

.rk-panel-text li {
    margin-bottom: 10px;
}

.rk-inline-link {
    color: var(--rk-auth-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.rk-inline-link:hover { color: var(--rk-auth-dark); }

/* RWD - Mobile */
@media (max-width: 768px) {
    .rk-auth-grid {
        flex-direction: column;
    }
    .rk-auth-profile {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--rk-auth-border);
        padding: 40px 20px;
    }
    .rk-auth-content {
        padding: 30px 20px;
    }
    .rk-auth-tabs {
        flex-direction: column;
        border-bottom: none;
        gap: 8px;
    }
    .rk-tab-btn {
        width: 100%;
        text-align: left;
        border-bottom: none;
        border-left: 4px solid transparent;
        background: var(--rk-auth-gray);
        border-radius: 8px;
        margin-bottom: 0;
    }
    .rk-tab-btn.active {
        border-left-color: var(--rk-auth-blue);
        background: #e0f2fe;
    }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-ekspert",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Zdaniem eksperta: Robert Kucharski o czasie nagrzewania podłogówki",
    "description": "Autorskie podsumowanie zasad sterowania bezwładnością cieplną ogrzewania podłogowego. Sygnatura E-E-A-T potwierdzająca kwalifikacje inżynierskie.",
    "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/",
      "jobTitle": "CEO, Główny Projektant HVAC",
      "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-ekspert",
    "name": "Kwalifikacje i autorytet inżynierski (E-E-A-T)",
    "description": "Dane weryfikujące doświadczenie eksperta projektującego wodne ogrzewanie podłogowe, pompy ciepła i systemy rekuperacji.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "robert kucharski projekt ogrzewania",
      "ekspert hvac",
      "projektant instalacji sanitarnych",
      "sterowanie pogodowe w ogrzewaniu podłogowym",
      "kompleksowa wycena ogrzewania podłogowego wodnego"
    ],
    "measurementTechnique": "Weryfikacja autorytetu poprzez powiązane profile społecznościowe (LinkedIn, Facebook) oraz staż w branży HVAC.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Ponad 1000 autorskich projektów podłogówki.",
        "Praktyczna optymalizacja krzywych grzewczych w OZC.",
        "Zarządzanie dynamiką i bezwładnością układów płaszczyznowych."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-ekspert",
    "name": "Weryfikator Autorytetu (E-E-A-T)",
    "description": "Moduł udostępniający zweryfikowane dane eksperckie oraz bezpośrednie odnośniki do kanałów komunikacji głównego projektanta.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-author-module" id="eeat-author-card">
    <div class="rk-auth-grid">
        
        <div class="rk-auth-profile">
            <div class="rk-auth-photo">
                <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski - Specjalista HVAC" loading="lazy">
            </div>
            <h3 class="rk-auth-name">Robert Kucharski</h3>
            <div class="rk-auth-title">Specjalista HVAC / CEO</div>
            
            <div class="rk-auth-socials">
                <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="noopener noreferrer" class="rk-social-btn" aria-label="Profil LinkedIn - Robert Kucharski">
                    <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="M19 0h-14c-2.761 0-5 2.239-5 5v14c0 2.761 2.239 5 5 5h14c2.762 0 5-2.239 5-5v-14c0-2.761-2.238-5-5-5zm-11 19h-3v-11h3v11zm-1.5-12.268c-.966 0-1.75-.79-1.75-1.764s.784-1.764 1.75-1.764 1.75.79 1.75 1.764-.783 1.764-1.75 1.764zm13.5 12.268h-3v-5.604c0-3.368-4-3.113-4 0v5.604h-3v-11h3v1.765c1.396-2.586 7-2.777 7 2.476v6.759z"/></svg>
                    LinkedIn
                </a>
                <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="noopener noreferrer" class="rk-social-btn" aria-label="Profil Facebook - Projekt Ogrzewania">
                    <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="M9 8h-3v4h3v12h5v-12h3.642l.358-4h-4v-1.667c0-.955.192-1.333 1.115-1.333h2.885v-5h-3.808c-3.596 0-5.192 1.583-5.192 4.615v3.385z"/></svg>
                    Facebook
                </a>
            </div>
        </div>

        <div class="rk-auth-content">
            <h2 class="rk-auth-h2">Zdaniem eksperta: Robert Kucharski o czasie nagrzewania</h2>
            
            <div class="rk-auth-quote-box">
                <div class="rk-auth-quote-icon">"</div>
                <p class="rk-auth-quote-text">
                    Podłogówka to nie grzejnik – nie zmuszaj jej do gwałtownych skoków. To potężny betonowy akumulator ciepła. Twój komfort i zminimalizowane rachunki zależą wyłącznie od stabilnej pracy instalacji, celowo zaprogramowanej w rzetelnym projekcie OZC.
                </p>
            </div>

            <div class="rk-auth-tabs">
                <button class="rk-tab-btn active" data-tab="tab-zasada">Inżynierska zasada</button>
                <button class="rk-tab-btn" data-tab="tab-projekt">Po co Ci projekt?</button>
            </div>

            <div class="rk-tab-panel active" id="tab-zasada">
                <div class="rk-panel-text">
                    Zawsze dobieraj <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/" class="rk-inline-link">rozdzielacze mosiężne lub nierdzewne</a> z rotametrami do precyzyjnej kalibracji. Pamiętaj: jeśli wylewka ma ponad 7 cm grubości, zapomnij o "grzejnikowym" sterowaniu nocnym. Czas potrzebny na dogrzanie przekroczy czas trwania nocy, a Twoja pompa ciepła straci sprawność SCOP.
                </div>
            </div>

            <div class="rk-tab-panel" id="tab-projekt">
                <div class="rk-panel-text">
                    Montaż rur na tzw. "oko" niemal zawsze gwarantuje koszty, które będziesz spłacać latami. Pełne, <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" class="rk-inline-link">inżynierskie opracowanie instalacji</a> daje Ci:
                    <ul>
                        <li>Optymalizację hydrauliki, eliminującą ryzyko "zęba termicznego".</li>
                        <li>Spasowanie pompy obiegowej z faktycznymi oporami najdłuższej pętli.</li>
                        <li>Bezpieczne zarządzanie gigantyczną bezwładnością betonu.</li>
                    </ul>
                </div>
            </div>

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

<script>
(function() {
    function initEeatTabs() {
        var card = document.getElementById('eeat-author-card');
        if (!card) return;

        var btns = card.querySelectorAll('.rk-tab-btn');
        var panels = card.querySelectorAll('.rk-tab-panel');

        // Błyskawiczne, pozbawione animacji przełączanie zakładek
        for (var i = 0; i < btns.length; i++) {
            btns[i].addEventListener('click', function() {
                var target = this.getAttribute('data-tab');

                for (var j = 0; j < btns.length; j++) {
                    btns[j].classList.remove('active');
                }
                for (var k = 0; k < panels.length; k++) {
                    panels[k].classList.remove('active');
                }

                this.classList.add('active');
                var activePanel = document.getElementById(target);
                if (activePanel) {
                    activePanel.classList.add('active');
                }
            });
        }
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initEeatTabs);
    } else {
        initEeatTabs();
    }
})();
</script>



<style>
:root {
    --rk-faq-dark: #0f172a;
    --rk-faq-blue: #0284c7;
    --rk-faq-blue-light: #f0f9ff;
    --rk-faq-accent: #38bdf8;
    --rk-faq-border: #e2e8f0;
    --rk-faq-text: #334155;
    --rk-faq-muted: #64748b;
    --rk-faq-bg: #ffffff;
    --rk-faq-hover: #f8fafc;
}

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

/* Nagłówek Sekcji */
.rk-faq-header {
    background: linear-gradient(135deg, var(--rk-faq-dark) 0%, #1e293b 100%);
    padding: 35px 45px;
    color: #ffffff;
    display: flex;
    align-items: center;
    gap: 20px;
    border-bottom: 4px solid var(--rk-faq-blue);
}

.rk-faq-header-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    background: rgba(56, 189, 248, 0.15);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-faq-accent);
    border: 1px solid rgba(56, 189, 248, 0.3);
}

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

.rk-faq-header-content p {
    font-size: 15px;
    color: #cbd5e1;
    margin: 0;
    line-height: 1.5;
}

/* Kontener Akordeonu */
.rk-faq-accordion {
    padding: 30px 45px;
    background: #f8fafc;
}

.rk-faq-item {
    background: var(--rk-faq-bg);
    border: 1px solid var(--rk-faq-border);
    border-radius: 14px;
    margin-bottom: 15px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
}

.rk-faq-item:last-child {
    margin-bottom: 0;
}

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

/* Przycisk Akordeonu */
.rk-faq-trigger {
    width: 100%;
    text-align: left;
    padding: 22px 25px;
    background: transparent;
    border: none;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 20px;
    align-items: center;
    cursor: pointer;
    border-radius: 14px;
    transition: background 0.2s ease;
}

.rk-faq-trigger:hover {
    background: var(--rk-faq-blue-light);
}

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

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

/* Ikona Chevron */
.rk-faq-chevron {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f1f5f9;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--rk-faq-muted);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

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

/* Zawartość Akordeonu */
.rk-faq-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.rk-faq-item.active .rk-faq-content {
    grid-template-rows: 1fr;
}

.rk-faq-content-inner {
    overflow: hidden;
}

.rk-faq-body {
    padding: 0 25px 25px 25px;
    font-size: 15px;
    line-height: 1.7;
    color: var(--rk-faq-text);
}

.rk-faq-body p {
    margin: 0 0 12px 0;
}

.rk-faq-body p:last-child {
    margin: 0;
}

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

.rk-faq-link:hover {
    border-color: var(--rk-faq-blue);
}

/* Wyróżnienia tekstu */
.rk-faq-highlight {
    background: var(--rk-faq-blue-light);
    color: var(--rk-faq-blue);
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 700;
}

/* RWD - Mobile */
@media (max-width: 768px) {
    .rk-faq-header {
        flex-direction: column;
        text-align: center;
        padding: 30px 20px;
    }
    .rk-faq-accordion {
        padding: 20px;
    }
    .rk-faq-trigger {
        padding: 18px 20px;
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }
    .rk-faq-chevron {
        margin-top: 10px;
    }
    .rk-faq-body {
        padding: 0 20px 20px 20px;
        text-align: center;
    }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "FAQPage",
    "mainEntity": [
      {
        "@type": "Question",
        "name": "Czy włączenie wyższej temperatury na kotle przyspieszy nagrzewanie zimnej podłogówki?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Nie, drastyczne podniesienie temperatury zasilania powyżej wartości projektowej nie przyspieszy znacząco pierwszego nagrzania, a może doprowadzić do popękania wylewki betonowej i uszkodzenia rur. Ograniczeniem jest maksymalna bezpieczna przewodność termiczna jastrychu oraz dopuszczalna temperatura powierzchni podłogi wynosząca 29°C dla pokoi i 33°C dla łazienek."
        }
      },
      {
        "@type": "Question",
        "name": "Jak sprawdzić, czy podłogówka działa prawidłowo, jeśli po 2 godzinach podłoga wciąż jest zimna?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Należy zweryfikować wskazania przepływomierzy (rotometrów) na rozdzielaczu – jeśli wskaźniki opadły i pokazują przepływ w granicach 1,5-2,5 l/min, system pracuje poprawnie, a brak odczuwalnego ciepła wynika wyłącznie z naturalnej, kilkugodzinnej bezwładności termicznej betonu. Pomocne jest użycie pirometru lub kamery termowizyjnej w celu sprawdzenia temperatury rury zasilającej i powrotnej na belce rozdzielacza."
        }
      },
      {
        "@type": "Question",
        "name": "Ile czasu nagrzewa się podłogówka zasilana z pompy ciepła w porównaniu do kotła gazowego?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Czas nagrzewania samej płyty betonowej jest identyczny dla obu źródeł ciepła, pod warunkiem dostarczenia medium o tej samej temperaturze i identycznym przepływie masowym. Różnica polega na tym, że kocioł gazowy potrafi wygenerować wysoką moc szczytową natychmiast, natomiast inwerterowa pompa ciepła dochodzi do swojej mocy nominalnej stopniowo, modulując obroty sprężarki w celu optymalizacji wskaźnika COP."
        }
      },
      {
        "@type": "Question",
        "name": "Czy rekuperacja (wentylacja mechaniczna z odzyskiem ciepła) skraca czas nagrzewania pomieszczenia z podłogówką?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Tak, rekuperacja skraca czas potrzebny na stabilizację temperatury powietrza w pomieszczeniu o około 20-30%, ponieważ stale odzyskuje ciepło z powietrza wywiewanego i ogranicza napływ zimnych mas powietrza zewnętrznego. Wentylacja mechaniczna eliminuje gwałtowne wychłodzenie strefy przypodłogowej, które występuje przy klasycznym wietrzeniu przez otwieranie okien."
        }
      },
      {
        "@type": "Question",
        "name": "Dlaczego łazienka z podłogówką nagrzewa się najdłużej, mimo że to małe pomieszczenie?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Łazienka ma najwyższą projektową temperaturę wewnętrzną (24°C w porównaniu do 20°C w pokojach), mniejszą efektywną powierzchnię grzewczą ze względu na zabudowę wanny czy brodzika oraz wysokie zapotrzebowanie na moc wentylacyjną. Z tego powodu, mimo gęstego rozstawu rur co 10 cm, czas potrzebny na osiągnięcie pełnego komfortu termicznego w łazience bywa najdłuższy w całym budynku."
        }
      }
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-faq",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "FAQ – Najczęstsze pytania dotyczące czasu nagrzewania ogrzewania podłogowego",
    "description": "Zbiór najważniejszych odpowiedzi inżynierskich dotyczących dynamiki nagrzewania układów płaszczyznowych, pomp ciepła i rekuperacji.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-faq",
    "name": "Baza wiedzy Q&A: Dynamika cieplna podłogówki",
    "description": "Usystematyzowane dane odpowiadające na najczęstsze błędy i pytania inwestorów związane z czasem reakcji wodnego ogrzewania podłogowego.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "dlaczego podłogówka wolno się nagrzewa",
      "temperatura zasilania ogrzewania podłogowego",
      "rotametry w podłogówce",
      "rekuperacja a ogrzewanie podłogowe",
      "zagęszczenie rur w łazience"
    ],
    "measurementTechnique": "Empiryczne i normatywne wskaźniki działania systemów ogrzewania płaszczyznowego weryfikowane w warunkach domów jednorodzinnych.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Weryfikacja przepływów hydraulicznych",
        "Zależność źródła ciepła (kocioł gazowy vs pompa ciepła) a czas nagrzewu",
        "Wpływ wentylacji mechanicznej na dynamikę grzewczą budynku"
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-faq",
    "name": "Interaktywny Asystent FAQ",
    "description": "Zwijany moduł z bazą wiedzy ułatwiający szybkie odnalezienie technicznych odpowiedzi na problemy związane z nagrzewaniem się podłogówki.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-faq-module" id="faq-nagrzewanie-podlogowki">
    <div class="rk-faq-header">
        <div class="rk-faq-header-icon">
            <svg width="32" height="32" 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="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>
        </div>
        <div class="rk-faq-header-content">
            <h2>FAQ – Najczęstsze pytania dotyczące czasu nagrzewania ogrzewania podłogowego</h2>
            <p>Rozwiewamy techniczne mity. Sprawdź, co wpływa na czas reakcji systemu i uniknij błędów eksploatacyjnych na starcie.</p>
        </div>
    </div>

    <div class="rk-faq-accordion">
        
        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Czy włączenie wyższej temperatury na kotle przyspieszy nagrzewanie zimnej podłogówki?</h3>
                <div class="rk-faq-chevron">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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-content-inner">
                    <div class="rk-faq-body">
                        <p><strong>Nie</strong>, drastyczne podniesienie temperatury zasilania powyżej wartości projektowej nie przyspieszy znacząco pierwszego nagrzania, a może doprowadzić do popękania wylewki betonowej i uszkodzenia rur.</p>
                        <p>Ograniczeniem jest maksymalna bezpieczna przewodność termiczna jastrychu oraz dopuszczalna <a href="https://projekt-ogrzewania.pl/maksymalna-temperatura-zasilania-podlogowki/" class="rk-faq-link">maksymalna temperatura zasilania</a> i powierzchni podłogi wynosząca <span class="rk-faq-highlight">29°C dla pokoi</span> i <span class="rk-faq-highlight">33°C dla łazienek</span>.</p>
                    </div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Jak sprawdzić, czy podłogówka działa prawidłowo, jeśli po 2 godzinach podłoga wciąż jest zimna?</h3>
                <div class="rk-faq-chevron">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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-content-inner">
                    <div class="rk-faq-body">
                        <p>Należy zweryfikować wskazania <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/" class="rk-faq-link">przepływomierzy (rotometrów) na rozdzielaczu</a> – jeśli wskaźniki opadły i pokazują przepływ w granicach <strong>1,5-2,5 l/min</strong>, system pracuje poprawnie.</p>
                        <p>Brak odczuwalnego ciepła wynika wyłącznie z naturalnej, kilkugodzinnej bezwładności termicznej betonu. Pomocne jest użycie pirometru lub kamery termowizyjnej w celu sprawdzenia temperatury rury zasilającej i powrotnej na belce rozdzielacza.</p>
                    </div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Ile czasu nagrzewa się podłogówka zasilana z pompy ciepła w porównaniu do kotła gazowego?</h3>
                <div class="rk-faq-chevron">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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-content-inner">
                    <div class="rk-faq-body">
                        <p>Czas nagrzewania samej płyty betonowej jest <strong>identyczny dla obu źródeł ciepła</strong>, pod warunkiem dostarczenia medium o tej samej temperaturze i identycznym przepływie masowym.</p>
                        <p>Różnica polega na tym, że <a href="https://projekt-ogrzewania.pl/kociol-gazowy/" class="rk-faq-link">kocioł gazowy</a> potrafi wygenerować wysoką moc szczytową natychmiast, natomiast inwerterowa pompa ciepła dochodzi do swojej mocy nominalnej stopniowo, modulując obroty sprężarki w celu optymalizacji wskaźnika COP.</p>
                    </div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Czy rekuperacja (wentylacja mechaniczna) skraca czas nagrzewania pomieszczenia z podłogówką?</h3>
                <div class="rk-faq-chevron">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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-content-inner">
                    <div class="rk-faq-body">
                        <p><strong>Tak</strong>, poprawne <a href="https://projekt-ogrzewania.pl/rekuperacja-i-ogrzewanie-podlogowe-czy-to-sie-oplaca/" class="rk-faq-link">połączenie rekuperacji i podłogówki</a> skraca czas potrzebny na stabilizację temperatury powietrza w pomieszczeniu o około <span class="rk-faq-highlight">20-30%</span>.</p>
                        <p>System stale odzyskuje ciepło z powietrza wywiewanego i ogranicza napływ zimnych mas z zewnątrz. Wentylacja mechaniczna eliminuje gwałtowne wychłodzenie strefy przypodłogowej, które występuje przy klasycznym wietrzeniu przez otwieranie okien.</p>
                    </div>
                </div>
            </div>
        </div>

        <div class="rk-faq-item">
            <button class="rk-faq-trigger" aria-expanded="false">
                <h3>Dlaczego łazienka z podłogówką nagrzewa się najdłużej, mimo że to małe pomieszczenie?</h3>
                <div class="rk-faq-chevron">
                    <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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-content-inner">
                    <div class="rk-faq-body">
                        <p>Łazienka ma najwyższą projektową temperaturę wewnętrzną (<span class="rk-faq-highlight">24°C</span> w porównaniu do 20°C w pokojach), mniejszą efektywną powierzchnię grzewczą ze względu na zabudowę wanny czy brodzika oraz wysokie zapotrzebowanie na moc wentylacyjną.</p>
                        <p>Z tego powodu, niezwykle ważne jest wiedzieć <a href="https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/" class="rk-faq-link">jak gęsto układać rury</a> (najczęściej co 10 cm). Mimo zagęszczenia, czas potrzebny na osiągnięcie pełnego komfortu termicznego w łazience bywa najdłuższy w całym budynku.</p>
                    </div>
                </div>
            </div>
        </div>

    </div>
</div>

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

    faqItems.forEach(item => {
        const trigger = item.querySelector('.rk-faq-trigger');
        
        trigger.addEventListener('click', () => {
            const isActive = item.classList.contains('active');
            
            // Zamknij wszystkie otwarte
            faqItems.forEach(faq => {
                faq.classList.remove('active');
                faq.querySelector('.rk-faq-trigger').setAttribute('aria-expanded', 'false');
            });

            // Otwórz kliknięty jeśli był zamknięty
            if (!isActive) {
                item.classList.add('active');
                trigger.setAttribute('aria-expanded', 'true');
            }
        });
    });
});
</script>



<style>
:root {
    --rk-base-dark: #0f172a;
    --rk-base-blue: #0284c7;
    --rk-base-light: #f8fafc;
    --rk-base-accent: #38bdf8;
    --rk-base-green: #059669;
    --rk-base-red: #dc2626;
    --rk-border-color: #e2e8f0;
    --rk-text-main: #334155;
    --rk-text-muted: #64748b;
}

.rk-summary-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 20px 40px -15px rgba(2, 132, 199, 0.1);
    border: 1px solid var(--rk-base-blue);
    overflow: hidden;
}

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

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

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

/* Interaktywny Panel Porównawczy */
.rk-interactive-panel {
    padding: 40px 50px;
    background: var(--rk-base-light);
}

.rk-toggle-container {
    display: flex;
    background: #e2e8f0;
    border-radius: 12px;
    padding: 6px;
    position: relative;
    margin-bottom: 30px;
}

.rk-toggle-btn {
    flex: 1;
    padding: 16px 20px;
    border: none;
    background: transparent;
    font-size: 16px;
    font-weight: 700;
    color: var(--rk-text-muted);
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.3s ease;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.rk-toggle-btn.active {
    color: var(--rk-base-dark);
}

.rk-toggle-slider {
    position: absolute;
    top: 6px;
    bottom: 6px;
    left: 6px;
    width: calc(50% - 6px);
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
}

.rk-toggle-btn[data-target="modern"].active ~ .rk-toggle-slider {
    transform: translateX(100%);
}

/* Treść przełącznika */
.rk-panel-content {
    display: none;
    background: #ffffff;
    border: 1px solid var(--rk-border-color);
    border-radius: 16px;
    padding: 30px;
    animation: fadeIn 0.4s ease-out forwards;
}

.rk-panel-content.active {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 25px;
    align-items: center;
}

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

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

.state-old .rk-icon-box { background: #fee2e2; color: var(--rk-base-red); }
.state-new .rk-icon-box { background: #d1fae5; color: var(--rk-base-green); }

.rk-panel-text h3 {
    margin: 0 0 10px 0;
    font-size: 20px;
    font-weight: 800;
    color: var(--rk-base-dark);
}

.rk-panel-text p {
    margin: 0 0 10px 0;
    font-size: 15px;
    line-height: 1.6;
    color: var(--rk-text-main);
}

.rk-panel-text p:last-child { margin: 0; }

.rk-link-inline {
    color: var(--rk-base-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Treść podsumowania i Tagi */
.rk-summary-body {
    padding: 0 50px 30px 50px;
    background: var(--rk-base-light);
}

.rk-tags-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px dashed #cbd5e1;
}

.rk-mat-tag {
    background: #ffffff;
    border: 1px solid var(--rk-border-color);
    color: var(--rk-base-blue);
    font-size: 13px;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

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

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

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

.rk-btn-solid:hover {
    background: #0369a1;
    transform: translateY(-3px);
    box-shadow: 0 15px 25px -5px rgba(2, 132, 199, 0.4);
}

/* RWD */
@media (max-width: 768px) {
    .rk-summary-header, .rk-interactive-panel, .rk-summary-body, .rk-summary-cta {
        padding: 30px 20px;
    }
    .rk-summary-header h2 { font-size: 24px; }
    
    /* Na mobile zmieniamy układ na akordeonowy (pionowy) */
    .rk-toggle-container {
        flex-direction: column;
        background: transparent;
        padding: 0;
        gap: 10px;
    }
    .rk-toggle-slider { display: none; /* Wyłączamy suwak na mobile */ }
    .rk-toggle-btn {
        background: #e2e8f0;
        border: 1px solid var(--rk-border-color);
        width: 100%;
    }
    .rk-toggle-btn.active {
        background: #ffffff;
        border-color: var(--rk-base-blue);
        box-shadow: 0 4px 6px rgba(2, 132, 199, 0.1);
    }
    
    .rk-panel-content.active {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 15px;
    }
    .rk-icon-box { margin: 0 auto; }
    .rk-btn-solid { width: 100%; font-size: 16px; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-podsumowanie-bezwladnosc",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Podsumowanie – Dlaczego kontrola bezwładności cieplnej to klucz do oszczędności?",
    "description": "Zrozumienie czasu nagrzewania się podłogówki i rezygnacja z nawyków z grzejników to fundament stabilnej i taniej eksploatacji instalacji CO. Konieczny jest projekt OZC.",
    "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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-bezwladnosc",
    "name": "Analiza oszczędności z kontroli bezwładności cieplnej instalacji płaszczyznowej",
    "description": "Zestawienie porównawcze wariantów eksploatacyjnych systemu grzewczego: gwałtowne sterowanie (nawyk grzejnikowy) vs stabilna praca na bazie krzywej grzewczej.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "czas nagrzewania ogrzewania podłogowego",
      "bezwładność cieplna podłogówki",
      "krzywa grzewcza w podłogówce",
      "obliczenia strat ciepła OZC",
      "sterowanie ogrzewaniem podłogowym"
    ],
    "measurementTechnique": "Porównanie kosztów skokowego sterowania temperaturą z płynnym zarządzaniem z użyciem krzywej grzewczej i bilansu OZC.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Skokowe zarządzanie: Częste wyłączanie układu wydłuża czas reakcji i podnosi rachunki.",
        "Stabilna praca: Zastosowanie inżynieryjnej krzywej grzewczej i stałego zładu gwarantuje najniższe zużycie energii i maksymalny komfort."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-bezwladnosc",
    "name": "Symulator Strategii Grzewczej",
    "description": "Interaktywny przełącznik wizualizujący różnicę w zarządzaniu energią między starymi nawykami (grzejniki) a inżynierskim podejściem do podłogówki (OZC).",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-summary-module" id="bezwladnosc-summary">
    <div class="rk-summary-header">
        <h2>Podsumowanie – Dlaczego kontrola bezwładności cieplnej to klucz do oszczędności?</h2>
        <p>Zrozumienie, ile czasu nagrzewa się podłogówka, to nie tylko ciekawostka fizyczna. To absolutny fundament, który pozwala zerwać z błędnymi nawykami wypracowanymi przy tradycyjnych grzejnikach i zacząć zarządzać energią w sposób zrównoważony.</p>
    </div>

    <div class="rk-interactive-panel">
        <div class="rk-toggle-container">
            <button class="rk-toggle-btn active" data-target="old">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><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>
                Nawyki z grzejników
            </button>
            <button class="rk-toggle-btn" data-target="modern">
                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
                Nowoczesne sterowanie
            </button>
            <div class="rk-toggle-slider"></div>
        </div>

        <div class="rk-panel-content state-old active" id="content-old">
            <div class="rk-icon-box">
                <svg width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="23 18 13.5 8.5 8.5 13.5 1 6"></polyline><polyline points="17 18 23 18 23 12"></polyline></svg>
            </div>
            <div class="rk-panel-text">
                <h3>Skokowe spadki i wzrosty</h3>
                <p>Częste włączanie i wyłączanie termostatów pokojowych na noc powoduje wyziębienie gigantycznej masy jastrychu. System zmuszany jest do gwałtownych skoków temperatury, co potężnie obciąża pompę ciepła.</p>
                <p>Ignorowanie zjawiska <a href="https://projekt-ogrzewania.pl/czym-jest-bezwladnosc-cieplna-w-ogrzewaniu-podlogowym/" class="rk-link-inline">bezwładności cieplnej podłogówki</a> to najszybsza droga do gigantycznych rachunków za prąd lub gaz.</p>
            </div>
        </div>

        <div class="rk-panel-content state-new" id="content-modern">
            <div class="rk-icon-box">
                <svg width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><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>
            <div class="rk-panel-text">
                <h3>Stabilna praca instalacji</h3>
                <p>Wodne ogrzewanie podłogowe to niezwykle sprawny akumulator ciepła. Najlepiej odwdzięcza się bezawaryjną pracą, gdy jest sterowane płynnie w oparciu o wyliczoną <a href="https://projekt-ogrzewania.pl/krzywa-grzewcza-w-ogrzewaniu-podlogowym/" class="rk-link-inline">krzywą grzewczą</a>.</p>
                <p>Zapewnia to przewidywalny czas reakcji układu, optymalne zbalansowanie hydrauliczne i maksymalny komfort cieplny bez szarpania sprężarką pompy.</p>
            </div>
        </div>
    </div>

    <div class="rk-summary-body">
        <p style="color: var(--rk-text-main); line-height: 1.6; font-size: 15px; margin-bottom: 0;">
            Pamiętaj: bezpieczeństwo strukturalne budynku i idealne przepływy nie powstaną przez montaż układu „na oko”. Każda sprawna instalacja musi mieć twardy inżynierski fundament oparty na rzeczywistych parametrach. Zgadywanie zysków i strat mija się z celem – jedynym pewnym rozwiązaniem jest rzetelne <a href="https://projekt-ogrzewania.pl/bilans-cieplny-budynku-fundament-efektywnosci-energetycznej-i-komfortu/" style="color: var(--rk-base-blue); font-weight: 700;">obliczenie bilansu cieplnego OZC</a>, na podstawie którego dobiera się dynamikę pracy systemu.
        </p>

        <div class="rk-tags-wrapper">
            <span class="rk-mat-tag"># czas nagrzewania ogrzewania podłogowego</span>
            <span class="rk-mat-tag"># bezwładność cieplna podłogówki</span>
            <span class="rk-mat-tag"># krzywa grzewcza w podłogówce</span>
            <span class="rk-mat-tag"># obliczenia strat ciepła OZC</span>
            <span class="rk-mat-tag"># oszczędności z ogrzewania podłogowego</span>
            <span class="rk-mat-tag"># projekt ogrzewania podłogowego online</span>
        </div>
    </div>

    <div class="rk-summary-cta">
        <h4>Przestań zgadywać. Zacznij projektować na mierzalnych liczbach.</h4>
        <a href="https://projekt-ogrzewania.pl/blog/" class="rk-btn-solid">
            SPRAWDŹ BAZĘ WIEDZY INŻYNIERSKIEJ
            <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="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg>
        </a>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const toggleBtns = document.querySelectorAll('#bezwladnosc-summary .rk-toggle-btn');
    const contents = document.querySelectorAll('#bezwladnosc-summary .rk-panel-content');

    toggleBtns.forEach(btn => {
        btn.addEventListener('click', function() {
            const target = this.getAttribute('data-target');

            // Reset stanów przycisków
            toggleBtns.forEach(b => b.classList.remove('active'));
            this.classList.add('active');

            // Przełączanie treści
            contents.forEach(content => {
                content.classList.remove('active');
                if (content.id === `content-${target}`) {
                    content.classList.add('active');
                }
            });
        });
    });
});
</script>



<style>
:root {
    --rk-dl-dark: #0f172a;
    --rk-dl-blue: #0284c7;
    --rk-dl-blue-light: #f0f9ff;
    --rk-dl-accent: #38bdf8;
    --rk-dl-bg: #ffffff;
    --rk-dl-gray: #f8fafc;
    --rk-dl-border: #e2e8f0;
    --rk-dl-text: #334155;
    --rk-dl-muted: #64748b;
}

.rk-download-module {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--rk-dl-bg);
    border-radius: 16px;
    border: 2px solid var(--rk-dl-border);
    box-shadow: 0 10px 30px -10px rgba(15, 23, 42, 0.08);
    overflow: hidden;
    /* Surowy design, celowy brak animacji CSS (transition użyte tylko do kolorów) */
}

/* Nagłówek */
.rk-dl-header {
    background: var(--rk-dl-gray);
    padding: 35px 45px;
    border-bottom: 1px solid var(--rk-dl-border);
    display: flex;
    align-items: center;
    gap: 20px;
}

.rk-dl-icon {
    width: 50px;
    height: 50px;
    background: var(--rk-dl-blue);
    color: #ffffff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.rk-dl-header h2 {
    font-size: 24px;
    font-weight: 900;
    margin: 0 0 5px 0;
    color: var(--rk-dl-dark);
    line-height: 1.2;
}

.rk-dl-header p {
    font-size: 15px;
    color: var(--rk-dl-muted);
    margin: 0;
    font-weight: 500;
}

/* Układ główny */
.rk-dl-grid {
    display: flex;
    padding: 40px 45px;
    gap: 40px;
}

/* Lewa Kolumna - Miniatura */
.rk-dl-thumbnail-box {
    width: 300px;
    flex-shrink: 0;
}

.rk-dl-thumb-wrapper {
    position: relative;
    border-radius: 12px;
    border: 1px solid var(--rk-dl-border);
    overflow: hidden;
    cursor: pointer;
    background: var(--rk-dl-gray);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    /* Brak animacji hover na skale, tylko zmiana obramowania */
    transition: border-color 0.2s;
}

.rk-dl-thumb-wrapper:hover {
    border-color: var(--rk-dl-blue);
}

.rk-dl-thumb-wrapper img {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 3/4;
    object-fit: cover;
    object-position: top;
}

.rk-dl-zoom-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(15, 23, 42, 0.4);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    opacity: 0;
    transition: opacity 0.2s;
}

.rk-dl-thumb-wrapper:hover .rk-dl-zoom-overlay {
    opacity: 1;
}

.rk-dl-zoom-icon {
    width: 48px;
    height: 48px;
    background: var(--rk-dl-blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}

.rk-dl-zoom-text {
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Prawa Kolumna - Treść i Przyciski */
.rk-dl-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

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

.rk-dl-desc {
    font-size: 15px;
    line-height: 1.7;
    color: var(--rk-dl-text);
    margin: 0 0 25px 0;
}

.rk-dl-desc ul {
    margin: 15px 0 0 20px;
    padding: 0;
}

.rk-dl-desc li {
    margin-bottom: 8px;
    font-weight: 600;
}

.rk-inline-link {
    color: var(--rk-dl-blue);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s;
}

.rk-inline-link:hover { color: var(--rk-dl-dark); }

/* Przyciski Pobierania */
.rk-dl-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 30px;
}

.rk-btn-download {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 800;
    font-size: 15px;
    border: 2px solid;
    transition: background-color 0.2s, color 0.2s;
}

.rk-btn-pdf {
    background: var(--rk-dl-dark);
    border-color: var(--rk-dl-dark);
    color: #ffffff;
}

.rk-btn-pdf:hover {
    background: #ffffff;
    color: var(--rk-dl-dark);
}

.rk-btn-img {
    background: #ffffff;
    border-color: var(--rk-dl-border);
    color: var(--rk-dl-text);
}

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

.rk-btn-icon-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.rk-btn-meta {
    font-size: 12px;
    font-weight: 600;
    font-family: monospace;
    opacity: 0.8;
}

/* Stopka Prawna */
.rk-dl-footer {
    background: var(--rk-dl-gray);
    padding: 15px 45px;
    border-top: 1px solid var(--rk-dl-border);
    font-size: 12px;
    color: var(--rk-dl-muted);
    text-align: center;
    line-height: 1.5;
}

/* LIGHTBOX (Przeglądarka zdjęć) */
.rk-lightbox {
    display: none; /* Natychmiastowe ukrycie, bez animacji */
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(15, 23, 42, 0.95);
    z-index: 99999;
    padding: 20px;
}

.rk-lightbox.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.rk-lightbox-content {
    position: relative;
    max-width: 90%;
    max-height: 90vh;
}

.rk-lightbox-img {
    max-width: 100%;
    max-height: 90vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}

.rk-lightbox-close {
    position: absolute;
    top: -40px;
    right: -10px;
    background: transparent;
    border: none;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Mobile RWD */
@media (max-width: 768px) {
    .rk-dl-header { flex-direction: column; text-align: center; padding: 30px 20px; }
    .rk-dl-grid { flex-direction: column; padding: 30px 20px; gap: 30px; }
    .rk-dl-thumbnail-box { width: 100%; max-width: 320px; margin: 0 auto; }
    .rk-dl-footer { padding: 15px 20px; text-align: left; }
    .rk-lightbox-close { top: -35px; right: 0; }
}
</style>

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "Article",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#article-infografika",
    "mainEntityOfPage": {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/"
    },
    "headline": "Pobierz darmową infografikę: Ile czasu nagrzewa się podłogówka?",
    "description": "Pobierz inżynierską ściągawkę na budowę. Zestawienie czasów nagrzewania wylewki, bezwładności oraz kluczowych parametrów z normy PN-EN 1264 w formacie PDF.",
    "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Ile-czasu-nagrzewa-sie-podlogowka.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-17",
    "dateModified": "2026-06-17"
  },
  {
    "@context": "https://schema.org",
    "@type": "Dataset",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#dataset-infografika",
    "name": "Infografika: Czasy reakcji układów płaszczyznowych",
    "description": "Zestawienie tabelaryczne i graficzne parametrów rozruchowych dla instalacji podłogowych z uwzględnieniem izolacji i jastrychu.",
    "license": "https://projekt-ogrzewania.pl/",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    },
    "keywords": [
      "najczęstsze błędy przy montażu ogrzewania podłogowego",
      "kompleksowy kalkulator ogrzewania podłogowego",
      "jak zaplanować rozmieszczenie pętli grzewczych w ogrzewaniu podłogowym",
      "ile rury na m² ogrzewania podłogowego",
      "gdzie nie układać ogrzewania podłogowego"
    ],
    "measurementTechnique": "Agregacja i wizualizacja wskaźników fizycznych (czas, grubość, opór cieplny) w formacie wektorowym PDF gotowym do druku.",
    "mainEntity": {
      "@type": "ItemList",
      "itemListElement": [
        "Czasy nagrzewania dla systemów mokrych i suchych.",
        "Wpływ grubości jastrychu na bezwładność.",
        "Limity oporu cieplnego dla okładzin (gres, panele)."
      ]
    }
  },
  {
    "@context": "https://schema.org",
    "@type": "WebApplication",
    "@id": "https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/#webapp-infografika",
    "name": "Przeglądarka Materiałów Edukacyjnych",
    "description": "Interaktywny moduł z Lightboxem umożliwiający podgląd i pobranie materiałów szkoleniowych dotyczących podłogówki bez opuszczania artykułu.",
    "applicationCategory": "EducationalApplication",
    "operatingSystem": "All",
    "browserRequirements": "Requires JavaScript and HTML5",
    "creator": {
      "@type": "Person",
      "name": "Robert Kucharski"
    }
  }
]
</script>

<div class="rk-download-module" id="pobierz-infografike-app">
    
    <div class="rk-dl-header">
        <div class="rk-dl-icon">
            <svg width="28" height="28" 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>
        </div>
        <div>
            <h2>Pobierz darmową infografikę: Ile czasu nagrzewa się podłogówka?</h2>
            <p>Inżynierska ściągawka dla inwestorów i wykonawców.</p>
        </div>
    </div>

    <div class="rk-dl-grid">
        
        <div class="rk-dl-thumbnail-box">
            <div class="rk-dl-thumb-wrapper" id="rk-trigger-lightbox" role="button" tabindex="0" aria-label="Powiększ infografikę">
                <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Ile-czasu-nagrzewa-sie-podlogowka.webp" alt="Infografika - Czasy nagrzewania podłogówki" loading="lazy">
                
                <div class="rk-dl-zoom-overlay">
                    <div class="rk-dl-zoom-icon">
                        <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" 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>
                    </div>
                    <span class="rk-dl-zoom-text">Kliknij, aby powiększyć</span>
                </div>
            </div>
        </div>

        <div class="rk-dl-content">
            <h3>Wszystkie dane w jednym miejscu</h3>
            <div class="rk-dl-desc">
                <p>Zamiast szukać informacji rozrzuconych po forach, przygotowaliśmy dla Ciebie kompaktowe zestawienie. Idealne do wydrukowania i powieszenia w kotłowni lub pokazania instalatorowi. Znajdziesz na niej m.in.:</p>
                <ul>
                    <li>Dokładne różnice czasowe między anhydrytem a cementem.</li>
                    <li>Ograniczenia oporów cieplnych dla różnych okładzin.</li>
                    <li>Wpływ grubości betonu na bezwładność systemu.</li>
                </ul>
                <p style="margin-top: 15px;">Jeśli po analizie infografiki wciąż masz wątpliwości, sprawdź nasz <a href="https://projekt-ogrzewania.pl/kompleksowy-kalkulator-ogrzewania-podlogowego/" class="rk-inline-link">kompleksowy kalkulator ogrzewania podłogowego</a>, by przeliczyć własny budynek, oraz zapoznaj się z tym, <a href="https://projekt-ogrzewania.pl/najczestsze-bledy-przy-montazu-ogrzewania-podlogowego-i-jak-ich-uniknac/" class="rk-inline-link">jakich najczęstszych błędów wykonawczych unikać</a>.</p>
            </div>

            <div class="rk-dl-buttons">
                <a href="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Ile-czasu-nagrzewa-sie-podlogowka.pdf" target="_blank" rel="noopener noreferrer" class="rk-btn-download rk-btn-pdf" download>
                    <div class="rk-btn-icon-left">
                        <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="12" y1="18" x2="12" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></svg>
                        Pobierz plik PDF
                    </div>
                    <span class="rk-btn-meta">Do druku</span>
                </a>
                
                <a href="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Ile-czasu-nagrzewa-sie-podlogowka.webp" target="_blank" rel="noopener noreferrer" class="rk-btn-download rk-btn-img" download>
                    <div class="rk-btn-icon-left">
                        <svg width="24" height="24" 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>
                        Pobierz grafikę (WebP)
                    </div>
                    <span class="rk-btn-meta">Na telefon</span>
                </a>
            </div>
        </div>
    </div>

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

    <div class="rk-lightbox" id="rk-img-lightbox">
        <div class="rk-lightbox-content">
            <button class="rk-lightbox-close" id="rk-close-lightbox">
                Zamknij 
                <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>
            </button>
            <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Ile-czasu-nagrzewa-sie-podlogowka.webp" class="rk-lightbox-img" alt="Infografika Podłogówka - Powiększenie">
        </div>
    </div>
</div>

<script>
// Czysty, w pełni bezpieczny kod bez znaków &&
(function() {
    function initDownloadLightbox() {
        var trigger = document.getElementById('rk-trigger-lightbox');
        var lightbox = document.getElementById('rk-img-lightbox');
        var closeBtn = document.getElementById('rk-close-lightbox');

        if (!trigger) { return; }
        if (!lightbox) { return; }

        // Otwieranie Lightboxa
        trigger.addEventListener('click', function() {
            lightbox.classList.add('active');
            document.body.style.overflow = 'hidden'; // Blokada przewijania tła
        });

        // Otwieranie enterem (Dostępność / Accessibility)
        trigger.addEventListener('keypress', function(e) {
            if (e.key === 'Enter') {
                lightbox.classList.add('active');
                document.body.style.overflow = 'hidden';
            }
        });

        // Zamykanie przyciskiem
        if (closeBtn) {
            closeBtn.addEventListener('click', function() {
                lightbox.classList.remove('active');
                document.body.style.overflow = ''; 
            });
        }

        // Zamykanie przez kliknięcie w tło
        lightbox.addEventListener('click', function(e) {
            // Zamknij tylko jeśli kliknięto bezpośrednio w ciemne tło (nie w obrazek)
            if (e.target === lightbox) {
                lightbox.classList.remove('active');
                document.body.style.overflow = '';
            }
        });

        // Zamykanie klawiszem Escape
        document.addEventListener('keydown', function(e) {
            if (e.key === 'Escape') {
                if (lightbox.classList.contains('active')) {
                    lightbox.classList.remove('active');
                    document.body.style.overflow = '';
                }
            }
        });
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', initDownloadLightbox);
    } else {
        initDownloadLightbox();
    }
})();
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ile-czasu-nagrzewa-sie-podlogowka/">Ile czasu nagrzewa się podłogówka?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
