<!-- ═══════════════════════════════════════════════════════════════════════
KROKBLIŻEJ — warstwa animacji (dla całej strony głównej)
Gdzie: na samej górze sekcji „Własny HTML” z testem (#kb-test2).
Co robi:
1) terakotowe kreski .kb-rule rysują się od lewej (albo od środka),
gdy wjeżdżają na ekran;
2) treść sekcji w #kb-home łagodnie pojawia się przy przewijaniu,
karty i kroki jedna po drugiej;
3) w teście: płynniejszy pasek postępu, pytania wsuwają się z boku,
a przed wynikiem jest krótka pauza „Układamy Twój wynik…”;
4) przyciski „Zobacz, co dostajesz” delikatnie się powiększają po najechaniu (działa też bez JS).
Bezpieczeństwo:
- nic nie jest ukryte bez JS: bez skryptu strona wygląda jak dotąd;
- osoby z włączonym „ogranicz ruch” w systemie nie widzą animacji;
- jeśli skrypt się wysypie, klasa kb-anim jest zdejmowana i wszystko
wraca do normalnego wyglądu.
Jak wyłączyć: usuń cały ten blok (od tego komentarza do </script>).
Jak dodać nowy element pojawiający się przy przewijaniu: nadaj mu
klasę kb-pojaw-tu.
═══════════════════════════════════════════════════════════════════════ -->
<style>
@media (prefers-reduced-motion:no-preference){
/* 1. kreska */
html.kb-anim .kb-rule.kb-r:not(.kb-widoczne){scale:0 1}
html.kb-anim .kb-rule{transform-origin:left center;transition:scale .65s cubic-bezier(.22,.61,.36,1) .06s}
html.kb-anim .kb-rule.kb-srodkowa{transform-origin:center}
/* 2. pojawianie się treści */
html.kb-anim .kb-pojaw{opacity:0;translate:0 18px;transition:opacity .3s ease,translate .3s cubic-bezier(.22,.61,.36,1)}
html.kb-anim .kb-pojaw.kb-widoczne{opacity:1;translate:0 0}
/* 3. test */
html.kb-anim #kb-test2 .kb-pasek i{transition:width .7s cubic-bezier(.22,.61,.36,1)}
@keyframes kbNowe{from{opacity:0;translate:16px 0}to{opacity:1;translate:0 0}}
@keyframes kbWynik{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
@keyframes kbOkl{from{opacity:0;translate:-18px 6px;rotate:-2deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes kbKropka{0%,80%,100%{opacity:.25;scale:.8}40%{opacity:1;scale:1}}
html.kb-anim #kb-test2 #kb-pytanie.kb-nowe{animation:kbNowe .45s cubic-bezier(.22,.61,.36,1) both}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>*{animation:kbNowe .45s cubic-bezier(.22,.61,.36,1) both}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>:nth-child(1){animation-delay:.07s}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>:nth-child(2){animation-delay:.12s}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>:nth-child(3){animation-delay:.17s}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>:nth-child(4){animation-delay:.22s}
html.kb-anim #kb-test2 #kb-opcje.kb-nowe>:nth-child(n+5){animation-delay:.27s}
html.kb-anim #kb-test2 .kb-czeka>:not(.kb-ukladam){display:none}
html.kb-anim #kb-test2 .kb-ukladam{padding:70px 0 90px;text-align:center}
html.kb-anim #kb-test2 .kb-ukladam span{display:inline-block;width:9px;height:9px;margin:0 5px;border-radius:50%;background:var(--clay);animation:kbKropka 1.1s ease-in-out infinite}
html.kb-anim #kb-test2 .kb-ukladam span:nth-child(2){animation-delay:.18s}
html.kb-anim #kb-test2 .kb-ukladam span:nth-child(3){animation-delay:.36s}
html.kb-anim #kb-test2 .kb-ukladam p{margin:18px 0 0;font-family:Lora,Georgia,serif;font-style:italic;color:var(--warm)}
html.kb-anim #kb-test2 .kb-odslon>*{animation:kbWynik .7s cubic-bezier(.22,.61,.36,1) both}
html.kb-anim #kb-test2 .kb-odslon>:nth-child(2){animation-delay:.15s}
html.kb-anim #kb-test2 .kb-odslon>:nth-child(3){animation-delay:.3s}
html.kb-anim #kb-test2 .kb-odslon>:nth-child(n+4){animation-delay:.42s}
html.kb-anim #kb-test2 .kb-odslon .kb-por-okl{animation:kbOkl .9s cubic-bezier(.22,.61,.36,1) .7s both}
/* 4. przyciski „Zobacz, co dostajesz” (linki do koszyka EasyTools i do #oferta) lekko rosną po najechaniu */
:is(#kb-home,#kb-test2,#kb-powitanie) :is(a[href*="/checkout/"],a.kb-btn[href*="#oferta"]){transition:background .16s,scale .25s cubic-bezier(.22,.61,.36,1),box-shadow .25s ease}
:is(#kb-home,#kb-test2,#kb-powitanie) :is(a[href*="/checkout/"],a.kb-btn[href*="#oferta"]):hover,:is(#kb-home,#kb-test2,#kb-powitanie) :is(a[href*="/checkout/"],a.kb-btn[href*="#oferta"]):focus-visible{scale:1.04;box-shadow:0 8px 20px rgba(169,87,47,.22)}
:is(#kb-home,#kb-test2,#kb-powitanie) :is(a[href*="/checkout/"],a.kb-btn[href*="#oferta"]):active{scale:.98;box-shadow:none}
}
</style>
<script>
(function(){
var h=document.documentElement;
try{
if(window.matchMedia&&matchMedia('(prefers-reduced-motion: reduce)').matches)return;
if(!('IntersectionObserver' in window)||!window.MutationObserver)return;
}catch(e){return}
h.classList.add('kb-anim');
var gotowe=false;
setTimeout(function(){if(!gotowe)h.classList.remove('kb-anim')},4000);
var each=function(l,f){Array.prototype.forEach.call(l,f)};
var io=null,testGotowy=false;
function start(){
try{
if(!io)io=new IntersectionObserver(function(wpisy){
wpisy.forEach(function(w){
if(!w.isIntersecting)return;
var el=w.target;io.unobserve(el);el.classList.add('kb-widoczne');
if(el.classList.contains('kb-pojaw')){
/* po animacji zdejmujemy klasy, żeby wrócił oryginalny wygląd i hover */
setTimeout(function(){el.classList.remove('kb-pojaw','kb-widoczne');el.style.transitionDelay=''},1000);
}
});
},{rootMargin:'0px 0px 20% 0px',threshold:.06});
/* 1. kreski */
each(document.querySelectorAll('.kb-rule:not(.kb-r)'),function(r){
r.classList.add('kb-r');
var cs=getComputedStyle(r);
if(cs.marginLeft===cs.marginRight&&parseFloat(cs.marginLeft)>0)r.classList.add('kb-srodkowa');
io.observe(r);
});
/* 2. treść sekcji */
var grupy='.kb-etapy-glosy,.kb-seria,.kb-powody,.kb-kroki,.kb-oferty,.kb-uczciwie,.kb-srodek-ksiazki';
var pomin='.kb-rule,#kb-vsl,#kb-vsl-male,#kb-vsl-dorosle,script,style';
var cele=[];
var dodaj=function(el){if(!el.matches(pomin)&&!el.hasAttribute('data-kb-a'))cele.push(el)};
each(document.querySelectorAll('#kb-home .kb-sekcja>.kb-wrap>*,#kb-home .kb-sekcja>.kb-waski>*'),function(el){
if(el.matches(grupy)){each(el.children,function(c,i){c.style.transitionDelay=Math.min(i,5)*60+'ms';dodaj(c)})}
else if(el.querySelector(grupy)&&el.children.length<4){
each(el.children,function(c){
if(c.matches(grupy))each(c.children,function(d,i){d.style.transitionDelay=Math.min(i,5)*60+'ms';dodaj(d)});
else dodaj(c);
});
}
else dodaj(el);
});
each(document.querySelectorAll('.kb-pojaw-tu'),dodaj);
cele.forEach(function(el){
el.setAttribute('data-kb-a','');
var r=el.getBoundingClientRect();
if(r.top<innerHeight*.9&&r.bottom>0)return; /* już widoczne przy wejściu — nie migamy */
el.classList.add('kb-pojaw');io.observe(el);
});
if(!testGotowy&&document.querySelector('#kb-test2 #kb-opcje')&&document.querySelector('#kb-test2 .kb-ekran[data-kb="wynik"]')){testGotowy=true;test()}
gotowe=true;
}catch(e){h.classList.remove('kb-anim')}
}
/* 3. test */
function test(){
var t=document.getElementById('kb-test2');if(!t)return;
var op=t.querySelector('#kb-opcje'),pyt=t.querySelector('#kb-pytanie');
if(op&&pyt)new MutationObserver(function(){
if(!op.children.length)return;
[pyt,op].forEach(function(e){e.classList.remove('kb-nowe');void e.offsetWidth;e.classList.add('kb-nowe')});
}).observe(op,{childList:true});
var w=t.querySelector('.kb-ekran[data-kb="wynik"]');if(!w)return;
var bylo=w.classList.contains('kb-on'),trwa=false;
new MutationObserver(function(){
var jest=w.classList.contains('kb-on');
if(jest&&!bylo&&!trwa)odslon();
bylo=jest;
}).observe(w,{attributes:true,attributeFilter:['class']});
function odslon(){
trwa=true;
var l=document.createElement('div');
l.className='kb-ukladam';l.setAttribute('role','status');
l.innerHTML='<span></span><span></span><span></span><p>Układamy Twój wynik…</p>';
w.insertBefore(l,w.firstChild);w.classList.add('kb-czeka');
setTimeout(function(){
if(l.parentNode)l.parentNode.removeChild(l);
w.classList.remove('kb-czeka');w.classList.add('kb-odslon');
/* paski obszarów rosną od zera dopiero teraz, kiedy je widać */
each(w.querySelectorAll('.kb-tor i'),function(b,i){
var cel=b.getAttribute('data-w');if(cel===null)return;
b.style.transition='none';b.style.width='0';void b.offsetWidth;
b.style.transition='width .9s cubic-bezier(.22,.61,.36,1) '+(.5+i*.12)+'s';
b.style.width=cel+'%';
});
setTimeout(function(){w.classList.remove('kb-odslon');trwa=false},2600);
},1100);
}
}
/* sekcje Easypage mogą dochodzić po kolei, więc skanujemy kilka razy (każdy element tylko raz) */
start();
document.addEventListener('DOMContentLoaded',start);
window.addEventListener('load',start);
setTimeout(start,400);setTimeout(start,1500);
})();
</script>
<style>@import url("https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,600;1,400&family=Nunito+Sans:wght@400;600;700&display=swap");#kb-test2{--paper:#FAF6E9;--paper-2:#F5F0DF;--card:#FDFBF4;--ink:#3C342B;--warm:#7A6E5E;--muted:#6B5A46;--clay:#C2764F;--clay-deep:#A9572F;--clay-wash:#FBF2E9;--sage:#7F8D68;--sage-deep:#4C5838;--sage-wash:#F1F3E7;--line:#E9DFCC;--radius:14px;--shadow:0 1px 2px rgba(90,80,69,.04),0 8px 24px rgba(90,80,69,.05);background:var(--paper);color:var(--ink);font-family:'Nunito Sans','Segoe UI',system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.62;padding:40px 20px 60px;-webkit-font-smoothing:antialiased}#kb-test2 *{box-sizing:border-box}#kb-test2 .kb-wrap{max-width:680px;margin:0 auto}#kb-test2 h1,#kb-test2 h2,#kb-test2 h3{font-family:Lora,Georgia,'Times New Roman',serif;font-weight:600;line-height:1.24;color:var(--sage-deep);margin:0;text-wrap:balance}#kb-test2 h1{font-size:clamp(28px,5.4vw,40px)}#kb-test2 h2{font-size:clamp(21px,3.8vw,25px)}#kb-test2 h3{font-size:18px}#kb-test2 p{margin:0 0 .78em}#kb-test2 b,#kb-test2 strong{font-weight:700;color:#332c24}#kb-test2 a{color:var(--clay-deep)}#kb-test2 .kb-marka{font-size:14.5px;font-weight:700;color:var(--clay-deep);margin:0 0 14px}#kb-test2 .kb-rule{width:64px;height:3px;background:var(--clay);border-radius:3px;opacity:.85;margin:18px 0 20px}#kb-test2 .kb-lead{font-family:Lora,Georgia,serif;font-style:italic;font-size:19px;line-height:1.55;color:var(--warm);max-width:32em}#kb-test2 .kb-muted{color:var(--muted);font-size:16px;line-height:1.55}#kb-test2 [hidden]{display:none!important}#kb-test2 .kb-ekran{display:none}#kb-test2 .kb-ekran.kb-on{display:block;animation:kbIn .3s ease both}@keyframes kbIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}#kb-test2 .kb-pasek{height:5px;background:var(--paper-2);border-radius:999px;overflow:hidden;margin-bottom:10px}#kb-test2 .kb-pasek i{display:block;height:100%;width:0;background:var(--sage);border-radius:999px;transition:width .3s ease}#kb-test2 .kb-licznik{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;color:var(--muted);margin-bottom:22px}#kb-test2 .kb-tag{color:var(--clay-deep)}#kb-test2 .kb-pytanie{font-family:Lora,Georgia,serif;font-size:clamp(20px,3.6vw,25px);line-height:1.34;color:var(--sage-deep);margin:0 0 20px;text-wrap:balance}#kb-test2 .kb-pytanie:focus{outline:0}#kb-test2 .kb-opcje{display:flex;flex-direction:column;gap:10px}#kb-test2 .kb-opcja{display:flex;align-items:flex-start;gap:13px;text-align:left;width:100%;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:15px 17px;font-family:inherit;font-size:16px;line-height:1.45;color:var(--ink);cursor:pointer;min-height:50px;transition:border-color .14s ease,background .14s ease}#kb-test2 .kb-opcja:hover{border-color:#d8c7ac;background:#fffdf6}#kb-test2 .kb-kropka{flex:0 0 auto;width:19px;height:19px;margin-top:2px;border-radius:50%;border:1.5px solid #d8c7ac;background:var(--paper)}#kb-test2 .kb-opcja.kb-wybrana{border-color:var(--clay);background:var(--clay-wash)}#kb-test2 .kb-opcja.kb-wybrana .kb-kropka{border-color:var(--clay);background:var(--clay);box-shadow:inset 0 0 0 3.5px var(--clay-wash)}#kb-test2 .kb-wiek{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}#kb-test2 .kb-wiek .kb-opcja{align-items:center;font-weight:600;font-size:16.5px}#kb-test2 .kb-wiek .kb-opcja:last-child{grid-column:1/-1}#kb-test2 .kb-wiek small{display:block;font-weight:400;font-size:14px;color:var(--muted)}#kb-test2 .kb-link{background:0 0;border:0;cursor:pointer;font-family:inherit;font-size:16px;color:var(--muted);padding:10px 2px;text-decoration:underline;text-underline-offset:3px}#kb-test2 .kb-link:hover{color:var(--clay-deep)}#kb-test2 :focus-visible{outline:2.5px solid var(--clay-deep);outline-offset:3px;border-radius:6px}#kb-test2 .kb-head{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px 24px;box-shadow:var(--shadow)}#kb-test2 .kb-head .kb-dla{font-size:14px;font-weight:700;color:var(--muted);margin:0 0 6px}#kb-test2 .kb-poziom{font-family:Lora,Georgia,serif;font-size:clamp(24px,4.4vw,30px);color:var(--sage-deep);margin:0 0 10px;line-height:1.25}#kb-test2 .kb-punkty{font-size:16px;color:var(--warm);margin:0;font-variant-numeric:tabular-nums}#kb-test2 .kb-ramka{border-radius:var(--radius);padding:18px 21px;margin:18px 0}#kb-test2 .kb-ramka h3{margin:0 0 .35em;font-size:17px}#kb-test2 .kb-ramka p:last-child{margin-bottom:0}#kb-test2 .kb-uwaga{background:var(--clay-wash);border-left:2px solid var(--clay)}#kb-test2 .kb-uwaga h3{color:var(--clay-deep)}#kb-test2 .kb-wsk{background:var(--sage-wash);border-left:2px solid var(--sage)}#kb-test2 .kb-obszary{margin:18px 0 6px;display:flex;flex-direction:column;gap:14px}#kb-test2 .kb-etykieta{display:flex;justify-content:space-between;align-items:baseline;font-size:16px;margin-bottom:6px;gap:12px}#kb-test2 .kb-nazwa{font-weight:700}#kb-test2 .kb-ile{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}#kb-test2 .kb-tor{height:9px;background:var(--paper-2);border-radius:999px;overflow:hidden}#kb-test2 .kb-tor i{display:block;height:100%;width:0;background:var(--sage);border-radius:999px;transition:width .6s cubic-bezier(.22,.8,.3,1)}#kb-test2 .kb-slaby .kb-tor i{background:var(--clay)}#kb-test2 .kb-slaby .kb-ile{color:var(--clay-deep);font-weight:700}#kb-test2 .kb-poradniki{display:flex;flex-direction:column;gap:16px;margin-top:28px}#kb-test2 .kb-poradnik{background:var(--paper-2);border:1px solid var(--line);border-left:3px solid var(--clay);border-radius:var(--radius);padding:24px 24px 22px}#kb-test2 .kb-poradnik.kb-wkrotce{border-left-color:var(--sage);background:var(--card)}#kb-test2 .kb-poradnik .kb-dla{font-size:14px;font-weight:700;color:var(--muted);margin:0 0 6px}#kb-test2 .kb-poradnik h3{font-size:21px;margin-bottom:.45em}#kb-test2 .kb-status{display:inline-block;font-size:14px;font-weight:700;color:var(--sage-deep);background:var(--sage-wash);border-radius:999px;padding:4px 12px;margin:0 0 12px}#kb-test2 .kb-cena{font-family:Lora,Georgia,serif;font-size:34px;color:var(--clay-deep);line-height:1;margin:16px 0 14px}#kb-test2 .kb-start{font-size:16px;color:var(--warm)}#kb-test2 .kb-mikro{font-size:14px;color:var(--muted);margin:12px 0 0}#kb-test2 .kb-btn{display:inline-block;border:0;cursor:pointer;font-family:inherit;font-weight:700;font-size:17px;line-height:1.3;text-decoration:none;text-align:center;background:var(--clay);color:#fffdf7;padding:15px 32px;border-radius:999px;box-shadow:var(--shadow);transition:background .16s ease}#kb-test2 .kb-btn:hover{background:var(--clay-deep);color:#fffdf7}#kb-test2 .kb-btn.kb-lekki{background:0 0;color:var(--clay-deep);box-shadow:none;border:1.5px solid var(--clay);padding:12px 24px;font-size:16px}#kb-test2 .kb-btn.kb-lekki:hover{background:var(--clay-wash)}#kb-test2 .kb-btn[disabled]{opacity:.6;cursor:default}#kb-test2 .kb-zapis{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin-top:18px}#kb-test2 .kb-zapis h3{color:var(--ink)}#kb-test2 .kb-pole{display:block;width:100%;font-family:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;margin:14px 0 12px}#kb-test2 .kb-pole:focus{outline:0;border-color:var(--clay);background:#fffdf6}#kb-test2 .kb-zgoda{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--warm);line-height:1.5;margin:0 0 16px}#kb-test2 .kb-zgoda input{margin-top:3px;accent-color:var(--clay);width:16px;height:16px;flex:0 0 auto}#kb-test2 .kb-stopka{margin-top:32px;padding-top:16px;border-top:1px solid var(--line);font-size:14px;color:var(--muted);line-height:1.55}@media (max-width:560px){#kb-test2{font-size:16.5px;padding:28px 16px 48px}#kb-test2 .kb-wiek{grid-template-columns:1fr}#kb-test2 .kb-btn{width:100%}}@media (prefers-reduced-motion:reduce){#kb-test2 .kb-ekran.kb-on{animation:none}#kb-test2 *{transition:none!important}}#kb-test2 .kb-poradnik.kb-z-okl{display:flex;gap:24px;align-items:flex-start}#kb-test2 .kb-por-okl{display:block;width:128px;flex:0 0 128px;height:auto;border-radius:6px;box-shadow:0 8px 22px rgba(60,52,43,.18)}#kb-test2 .kb-por-tresc{flex:1;min-width:0}@media (max-width:560px){#kb-test2 .kb-poradnik.kb-z-okl{flex-direction:column;gap:16px}#kb-test2 .kb-por-okl{width:112px;flex-basis:auto}}</style> <div id="test"></div> <div id="kb-test2"> <div class="kb-wrap"> <section class="kb-ekran kb-on" data-kb="start" aria-labelledby="kb-h1"> <p class="kb-marka">Krokbliżej — poradniki dla rodziców</p> <h2 id="kb-h1">Sprawdź, gdzie dziś jest Wasza relacja</h2> <div class="kb-rule"></div> <p class="kb-lead">Dziewięć pytań, około trzech minut. Dostaniesz wynik, obszar, od którego warto zacząć, i jedną rzecz do zrobienia w tym tygodniu.</p> <p class="kb-muted" id="kb-poprzedni" hidden></p> <p class="kb-pytanie" style="margin-top:26px">Ile lat ma Wasze dziecko?</p> <div class="kb-wiek" id="kb-wiek"></div> <p class="kb-muted" style="margin-top:16px">Masz więcej dzieci? Zrób test dla każdego osobno — relacja z każdym wygląda trochę inaczej.</p> <p class="kb-muted" id="kb-do-poradnikow" style="margin:0">Wiesz już, czego szukasz? <a href="#poradniki" id="kb-link-poradniki">Zobacz wszystkie poradniki</a></p> </section> <section class="kb-ekran" data-kb="pytania"> <div class="kb-pasek"><i id="kb-pasek"></i></div> <div class="kb-licznik"> <span id="kb-licznik">Pytanie 2 z 9</span> <span class="kb-tag" id="kb-tag"></span> </div> <p class="kb-pytanie" id="kb-pytanie" tabindex="-1" aria-live="polite"></p> <div class="kb-opcje" id="kb-opcje"></div> <button class="kb-link" id="kb-wstecz" type="button" style="margin-top:18px">Wróć do poprzedniego pytania</button> <p class="kb-muted" style="margin-top:20px">Odpowiadaj o ostatnim miesiącu i wybieraj to, co najbliższe prawdzie. Wynik widzisz tylko Ty.</p> </section> <section class="kb-ekran" data-kb="wynik"> <div class="kb-head"> <p class="kb-dla" id="kb-dla"></p> <p class="kb-poziom" id="kb-poziom"></p> <p class="kb-punkty" id="kb-punkty"></p> </div> <div id="kb-opis" style="margin-top:24px"></div> <div id="kb-obszary-blok"> <h2 style="margin-top:32px">Co się dzieje w poszczególnych obszarach</h2> <div class="kb-rule"></div> <p class="kb-muted" style="margin-bottom:4px">Im dłuższy pasek, tym lepiej działa ten obszar. Terakotowy pasek to miejsce, od którego warto zacząć.</p> <div class="kb-obszary" id="kb-obszary"></div> <p id="kb-komentarz" style="margin-top:14px"></p> </div> <div id="kb-ostrzezenie"></div> <h2 style="margin-top:34px" id="kb-poradniki-tytul">Poradnik dla Was</h2> <div class="kb-rule"></div> <div class="kb-poradniki" id="kb-poradniki"></div> <div class="kb-zapis" id="kb-zapis"> <h3 id="kb-zapis-tytul"></h3> <p class="kb-muted" id="kb-zapis-tekst" style="margin:8px 0 0"></p> <form id="kb-form" novalidate> <input class="kb-pole" type="email" id="kb-mail" placeholder="twoj@email.pl" autocomplete="email" aria-label="Adres e-mail"> <label class="kb-zgoda"> <input type="checkbox" id="kb-zgoda"> <span id="kb-zgoda-tekst"></span> </label> <button class="kb-btn kb-lekki" type="submit" id="kb-wyslij"></button> </form> <p class="kb-muted" id="kb-reczny" hidden style="margin:14px 0 0"></p> <p class="kb-muted" id="kb-info" role="status" style="margin:12px 0 0"></p> </div> <p style="margin-top:28px"> <button class="kb-btn kb-lekki" id="kb-jeszcze" type="button">Zrób test dla innego dziecka</button> </p> <p class="kb-stopka">Test ma charakter edukacyjny, nie jest narzędziem diagnostycznym i nie zastępuje kontaktu ze specjalistą.</p> </section> </div> </div> <script>!function(){"use strict";var a={endpointMail:"",mailKontakt:"krokblizejsupport@gmail.com",linkPoradniki:"#poradniki",tomy:{t79:{tytul:"E-book 7–9 lat",dla:"Tom · Dla dzieci 7–9 lat",dostepny:!1,okladka:""},t1012:{tytul:"E-book 10–12 lat",dla:"Tom · Dla dzieci 10–12 lat",dostepny:!1,okladka:""},t1315:{tytul:"E-book 13–15 lat",dla:"Tom · Dla nastolatków 13–15 lat",dostepny:!1,okladka:""},t1619:{tytul:"E-book 16–19 lat",dla:"Tom · Dla nastolatków 16–19 lat",dostepny:!1,okladka:""},t1:{tytul:"Jak odbudować kontakt z dzieckiem",dla:"Tom 2 · Dla rodziców dzieci 11–18 lat",dostepny:!0,cena:"49 zł",link:"#oferta",mikro:"PDF, 102 strony, ok. 2–2,5 godz. czytania. Dostęp od razu po zakupie, 30 dni darmowego zwrotu.",okladka:"https://app.easy.tools/files/pages/assets/2026-09-04/okladkaweb1200px1_mtng6mwa.png"},t2:{tytul:"Jak odzyskać kontakt z dorosłym dzieckiem",dla:"Tom 3 · Dla rodziców dorosłych dzieci",dostepny:!0,cena:"49 zł",link:"#oferta-dorosle",mikro:"PDF, 114 stron, ok. 2–2,5 godz. czytania. Dostęp od razu po zakupie, 30 dni darmowego zwrotu.",okladka:"https://app.easy.tools/files/pages/assets/2026-09-21/okladkatom21200px_mub3rgpy.jpg"},t3:{tytul:"Jak zbudować więź z dzieckiem",dla:"Tom 1 · Dla rodziców dzieci 3–7 lat",dostepny:!0,cena:"49 zł",link:"#oferta-male",mikro:"PDF, 111 stron, ok. 2–2,5 godz. czytania. Dostęp od razu po zakupie, 30 dni darmowego zwrotu.",okladka:"https://easycart.fra1.digitaloceanspaces.com/images/HJh74SybRw9zqmwTlp7MSJizFY6gNRs1.webp"}}},i=[{id:"m",etykieta:"3–7 lat",opis:"przedszkolak, wczesna szkoła"},{id:"n",etykieta:"11–18 lat",opis:"szkoła podstawowa, liceum"},{id:"d",etykieta:"Dorosłe dziecko",opis:"po osiemnastce"}];function e(a){return[{o:"R",q:a?"Kiedy dziecko wraca ze szkoły, najczęściej…":"Kiedy Twoje dziecko wraca do domu, najczęściej…",a:a?["Samo opowiada, co się działo.","Opowiada, jeśli zapytam o coś konkretnego.","Odpowiada jednym słowem i idzie do zabawy albo ekranu.","Nie chce o tym mówić albo złości się, gdy pytam."]:["Samo mówi, co się działo — czasem od razu, czasem po godzinie.","Opowiada, jeśli zapytam o coś konkretnego.","Odpowiada jednym słowem i idzie do siebie.","Wchodzi bez słowa i zamyka za sobą drzwi."]},{o:"Z",q:"Gdy dziecko coś przeskrobie, dowiadujesz się o tym…",a:["Od niego — zwykle zanim dowiem się skądinąd.","Od niego, ale dopiero wtedy, gdy nie ma już wyjścia.","Ze szkoły, od rodzeństwa albo przypadkiem.","Najczęściej wcale. Orientuję się długo po fakcie."]},{o:"K",q:"Jak zwykle kończy się u Was rozmowa o czymś trudnym?",a:["Coś ustalamy, nawet jeśli po drodze jest nerwowo.","Urywa się bez konkluzji, ale bez awantury.","Podniesionym głosem albo trzaśnięciem drzwiami.","Nie zaczynamy takich rozmów — wiadomo, jak by się skończyły."]},{o:"C",q:"Ile czasu w tygodniu spędzacie razem, nie licząc obowiązków, wożenia i posiłków w biegu?",a:["Kilka godzin, w kilku kawałkach.","Godzinę, może dwie.","Kilkanaście minut.","Praktycznie zero."]},{o:"R",q:"Kiedy dziecko mówi coś, co Cię niepokoi, Twoja pierwsza reakcja to…",a:["Pytanie, czego teraz potrzebuje — pomocy czy tylko wysłuchania.","Wysłuchanie, ale zaraz potem rada.","Rada albo ocena od razu.","Złość — bo zwykle dowiaduję się o wszystkim za późno."]},{o:"Z",q:a?"Do kogo dziecko poszłoby z czymś, co naprawdę je przestraszyło?":"Do kogo Twoje dziecko poszłoby z naprawdę poważnym kłopotem?",a:a?["Do mnie albo do drugiego rodzica.","Do innego dorosłego — babci, nauczycielki.","Do kolegi albo rodzeństwa.","Chyba do nikogo — zatrzymałoby to dla siebie."]:["Do mnie albo do drugiego rodzica.","Do jakiegoś dorosłego, ale niekoniecznie do mnie.","Do znajomych.","Do nikogo — i właśnie to mnie niepokoi."]},{o:"C",q:"Macie coś, co robicie regularnie tylko we dwoje — choćby drobnego?",a:["Tak, i trzyma się to od dłuższego czasu.","Mieliśmy, ale się rozsypało.","Nic regularnego, czasem coś wyjdzie przypadkiem.","Nie ma niczego takiego."]},{o:"K",q:"Kiedy jesteście razem w domu, atmosfera jest…",a:["Zwykle spokojna.","Różnie — mniej więcej po połowie.","Napięta, chodzimy wokół siebie ostrożnie.","Ciężka. Czuję ulgę, kiedy każde z nas jest u siebie."]}]}var o={R:{nazwa:"Rozmowa",slabo:"Rozmawiacie o sprawach, nie o życiu. To najczęstsze miejsce, w którym zaczyna się dystans — i najłatwiejsze do ruszenia, bo wystarczy zmienić sposób zadawania pytań.",startN:"Zacznij od rozdziału z gotowymi skryptami trudnych rozmów i od ściągi „Co powiedzieć, gdy…”.",startS:"W poradniku dla rodziców nastolatków zacznij od skryptów rozmów, a w poradniku dla młodszych dzieci — od rozdziału o słuchaniu."},Z:{nazwa:"Zaufanie",slabo:"Dziecko filtruje to, co Ci mówi. Zwykle nie dlatego, że ma coś wielkiego do ukrycia, tylko dlatego, że nauczyło się, co się dzieje po szczerej odpowiedzi.",startN:"Zacznij od rozdziału o pięciu błędach, które robimy z troski, i od rozdziału o telefonie.",startS:"W poradniku dla rodziców nastolatków zacznij od pięciu błędów, które robimy z troski, a w poradniku dla młodszych dzieci — od rozdziałów o zaufaniu i o kłamstwie."},C:{nazwa:"Wspólny czas",slabo:"Jesteście obok siebie, ale nie razem. Brakuje nie wielkich wyjść, tylko jednej powtarzalnej rzeczy, która dzieje się bez pytania o zgodę.",startN:"Zacznij od 14-dniowego wyzwania bliskości — buduje wspólny czas bez proszenia dziecka o zgodę.",startS:"W poradniku dla rodziców nastolatków zacznij od 14-dniowego wyzwania, a w poradniku dla młodszych dzieci — od rozdziału o 10 minutach sam na sam."},K:{nazwa:"Klimat domu",slabo:"W tle jest napięcie i to ono zjada wszystko inne. Zanim zaczniesz pracować nad rozmowami, trzeba obniżyć temperaturę — inaczej każda próba skończy się kłótnią.",startN:"Zacznij od metody STOP na wybuchy złości i od rozdziału o konsekwencji zamiast kary.",startS:"W poradniku dla rodziców nastolatków zacznij od metody STOP, a w poradniku dla młodszych dzieci — od rozdziałów o granicach bez krzyku i o naprawie po własnym wybuchu."}},z={w:{dla:"Wynik dla dziecka w wieku 7–9 lat",pytania:e(!0),obszary:o,startKlucz:"startW",tomy:["t79"],poziomy:[{nazwa:"Blisko i ciekawie — to dobry czas, żeby to utrwalić",opis:"<p>Dziecko samo szuka Was wieczorem, opowiada o szkole i podwórku. Za rok, dwa naturalnie zacznie zamykać drzwi — <b>to, co budujecie teraz, zostanie</b>.</p>",nierob:"Nie odkładaj wspólnego czasu na później — w tym wieku okno jest szeroko otwarte, ale nie zostanie takie na zawsze.",zrob:"Wybierzcie jedną wieczorną chwilę w tygodniu, która należy tylko do Was — bez telefonu, bez pośpiechu."},{nazwa:"Dobrze, ale zaczyna się zgiełk szkoły i kolegów",opis:"<p>Rozmowy są krótsze niż kiedyś — szkoła, koledzy i ekran zabierają uwagę. To normalne, ale warto pilnować, żeby dom został ciekawszy niż ekran.</p>",nierob:"Nie traktuj krótszych rozmów jako buntu — w tym wieku to często zwykłe zmęczenie po szkole.",zrob:"Zapytaj o jedną konkretną rzecz z dnia dziecka, zamiast ogólnego ’jak było’ — łatwiej wtedy odpowiedzieć."},{nazwa:"Widać pierwsze zamknięte drzwi",opis:"<p>Coraz częściej słyszysz ’nie teraz’ albo ’sam sobie poradzę’. To pierwsze próby samodzielności, ale też sygnał, że warto wzmocnić kontakt, zanim stanie się nawykiem.</p>",nierob:"Nie wymuszaj rozmowy siłą — im bardziej naciskasz, tym mocniej dziecko się zamyka.",zrob:"Bądź w pobliżu bez pytań — wspólne zadanie (gotowanie, spacer) często otwiera rozmowę lepiej niż pytanie wprost."},{nazwa:"Dystans większy, niż powinien być w tym wieku",opis:"<p>Rozmowy kończą się na ’dobrze’ i ’nic’, a wspólny czas trzeba wymuszać. W tym wieku to jeszcze łatwo odwrócić — ale nie samo z siebie.</p>",nierob:"Nie czekaj, aż ’samo się ułoży’ — w tym wieku dystans rzadko znika bez zmiany po Twojej stronie.",zrob:"Zacznijcie od jednej wspólnej, krótkiej rzeczy dziennie — nawet 10 minut bez telefonu robi różnicę."}]},n:{dla:"Wynik dla dziecka w wieku 11–18 lat",pytania:e(!1),obszary:o,startKlucz:"startN",tomy:["t1"],poziomy:[{nazwa:"Blisko, mimo że coraz bardziej samodzielny",opis:"<p>Sam dzieli się ważnymi sprawami, choć decyzje coraz częściej podejmuje sam. To dobry moment, żeby z roli kontrolera przejść w rolę doradcy.</p>",nierob:"Nie traktuj jego rosnącej niezależności jako oddalania się od Ciebie.",zrob:"Zapytaj o zdanie w sprawie, która i tak go dotyczy — pokaż, że się liczy."},{nazwa:"Dobrze, ale rozmowy dzieją się rzadziej",opis:"<p>Szkoła, znajomi i plany na przyszłość zabierają większość uwagi. Kontakt jest, ale często trzeba go zainicjować samemu.</p>",nierob:"Nie czekaj, aż inicjatywa zawsze wyjdzie od niego.",zrob:"Zaproponuj coś konkretnego zamiast ogólnego „pogadajmy” — wspólne wyjście, film, podwiezienie gdzieś."},{nazwa:"Rozmowy są coraz rzadsze i ostrożniejsze",opis:"<p>Czujecie się trochę jak współlokatorzy, nie rodzina. Ważne rzeczy wychodzą na jaw z opóźnieniem albo wcale.</p>",nierob:"Nie porównuj go do tego, jaki był kiedyś — to zamyka rozmowę, zanim się zacznie.",zrob:"Zapytaj o jego plany na przyszłość i naprawdę posłuchaj, bez od razu doradzania."},{nazwa:"Dystans, który trudno już zignorować",opis:"<p>Kontakt się rozrzedza, a każda rozmowa jest trochę bardziej ostrożna od poprzedniej. Zanim wyprowadzi się z domu, zostaje niewiele czasu, żeby to odwrócić.</p>",nierob:"Nie czekaj na „odpowiedni moment” — z każdym rokiem będzie mniej okazji.",zrob:"Zaproponuj jedno wspólne wyjście tylko we dwoje, bez reszty rodziny."}]},s:{dla:"Który poradnik pasuje Waszej rodzinie",pytania:e(!0),obszary:o,startKlucz:"startS",tomy:["t3","t1"],poziomy:[{nazwa:"Blisko, mimo nastoletniego dystansu",opis:"<p>Czasem sam zaczyna rozmowę, choć drzwi bywają zamknięte częściej niż kiedyś. To dobry fundament — pilnujcie go, zanim zajmie go wszystko inne.</p>",nierob:"Nie traktuj zamkniętych drzwi jako odrzucenia — w tym wieku to często po prostu potrzeba przestrzeni.",zrob:"Zaproponuj coś, co lubi robić, bez wymuszania rozmowy przy okazji."},{nazwa:"Dobrze, ale rozmowy są coraz krótsze",opis:"<p>„Nic” i „normalnie” pojawiają się częściej, a szczegóły poznajesz przypadkiem. To typowe dla tego wieku, ale warto pilnować, żeby nie zostało jedyną odpowiedzią.</p>",nierob:"Nie dopytuj w kółko o to samo — nastolatek zamyka się bardziej, nie mniej.",zrob:"Rozmawiajcie przy wspólnej czynności (jazda samochodem, gotowanie) — łatwiej mówić, nie patrząc sobie w oczy."},{nazwa:"Napięcie zaczyna wypierać bliskość",opis:"<p>Coraz częściej kończycie na sprzeczce albo ciszy. Zaufanie jeszcze jest, ale kurczy się z każdym starciem o drobiazgi.</p>",nierob:"Nie wybieraj każdej bitwy — zostaw sobie siłę na to, co naprawdę ważne.",zrob:"Wybierzcie jedną zasadę do odpuszczenia w tym tygodniu i zobaczcie, co się zmieni."},{nazwa:"Kontakt jest mocno nadwyrężony",opis:"<p>Rozmowy kończą się trzaśniętymi drzwiami, a większość tego, co ważne, dowiadujesz się od innych albo wcale.</p>",nierob:"Nie próbuj naprawić tego jedną wielką rozmową — to buduje się małymi krokami.",zrob:"Zacznij od jednego zdania bez pytań i bez oceniania — samo „cieszę się, że jesteś” wystarczy na początek."}]},m:{dla:"Wynik dla dziecka w wieku 3–7 lat",pytania:[{o:"B",q:"Ile razy w tygodniu macie choć 10 minut tylko dla siebie, bez telefonu i obowiązków?",a:["Prawie codziennie.","Kilka razy.","Raz, jak się uda.","Rzadziej albo wcale."]},{o:"E",q:"Kiedy dziecko wpada w złość albo histerię…",a:["Udaje mi się zachować spokój i zostać przy nim.","Zaczynam spokojnie, ale puszczają mi nerwy.","Najczęściej podnoszę głos.","Nie daję rady — wychodzę albo krzyczę."]},{o:"G",q:"Poranki przed wyjściem z domu są zwykle…",a:["Spokojne.","Bywa nerwowo, ale bez kłótni.","Codzienne przepychanki.","To najgorsza część dnia."]},{o:"Z",q:"Kiedy dziecko coś zepsuje albo nabroi…",a:["Samo przychodzi i mówi.","Przyznaje się, gdy zapytam.","Wypiera się albo zrzuca winę na kogoś.","Ukrywa, a ja dowiaduję się po czasie."]},{o:"B",q:"Wieczór przed snem najczęściej wygląda tak:",a:["Stały, spokojny rytuał.","Rytuał jest, ale często go skracam.","Zwykle pośpiech i poganianie.","Kończy się awanturą albo płaczem."]},{o:"E",q:"Ile razy w ostatnim tygodniu dzień skończył się Twoim krzykiem?",a:["Ani razu albo raz.","Kilka razy.","Prawie codziennie.","Kilka razy dziennie."]},{o:"G",q:"Gdy mówisz „nie”, dziecko…",a:["Marudzi, ale przyjmuje.","Negocjuje, aż czasem ustępuję.","Robi awanturę, a ja ustępuję albo krzyczę.","W ogóle nie słucha."]},{o:"Z",q:"Czy dziecko opowiada Ci o tym, co je przestraszyło albo zasmuciło?",a:["Tak, samo z siebie.","Czasem, gdy dopytam.","Rzadko.","Prawie nigdy."]}],obszary:{B:{nazwa:"Bliskość",slabo:"Dzień jest pełen obowiązków, a brakuje momentów, w których dziecko ma Cię tylko dla siebie. Małe dziecko nie umie o nie poprosić — pokazuje ten brak marudzeniem i złym zachowaniem.",start:"W poradniku zacznij od rozdziału o 10 minutach sam na sam."},E:{nazwa:"Emocje i krzyk",slabo:"Burze emocji kończą się Twoim krzykiem, a potem poczuciem winy. To nie dowód, że jesteś złym rodzicem — to znak, że zmęczenie wygrywa z planem.",start:"W poradniku zacznij od rozdziału o zmęczeniu i krzyku rodzica, a potem od rozdziału o burzach emocji."},G:{nazwa:"Codzienność i granice",slabo:"Poranki i „nie” to u Was pola bitwy. Dziecko sprawdza, czy granica jest prawdziwa, a każda przepychanka uczy je, że warto próbować dalej.",start:"W poradniku zacznij od rozdziałów o czterech polach bitwy i o granicach bez krzyku."},Z:{nazwa:"Zaufanie",slabo:"Dziecko uczy się właśnie teraz, co się dzieje po złej wiadomości. Jeśli rozbity kubek kończy się awanturą, za kilka lat nie usłyszysz o rzeczach dużo ważniejszych.",start:"W poradniku zacznij od rozdziałów o zaufaniu i o tym, skąd u małych dzieci biorą się kłamstwa."}},startKlucz:"start",tomy:["t3"],poziomy:[{nazwa:"Blisko, ale już z własnym zdaniem",opis:"<p>Wciąż Was szuka, ale zaczyna negocjować zasady i mieć swoje opinie. Dobry moment, żeby to dopracować, zanim wejdzie w nastoletniość.</p>",nierob:"Nie traktuj każdej dyskusji jak buntu — w tym wieku negocjowanie zasad to normalny trening samodzielności.",zrob:"Zapytaj o zdanie w jednej domowej decyzji w tym tygodniu — i naprawdę je uwzględnij."},{nazwa:"Dobrze, ale telefon i koledzy zabierają coraz więcej",opis:"<p>Rozmowy są krótsze, bo uwaga ucieka do ekranu i grupy rówieśniczej. To naturalne, ale dom powinien zostać ciekawszy niż ekran.</p>",nierob:"Nie porównuj z tym, jak było kiedyś — to tylko oddala.",zrob:"Ustalcie jedną wspólną rzecz bez ekranów w tygodniu — grę, spacer, wspólne gotowanie."},{nazwa:"Zaczyna się dystans i sekrety",opis:"<p>Coraz częściej nie wiesz, co się dzieje w jego głowie, a pytania wprost trafiają na mur. To sygnał, żeby wzmocnić kontakt, zanim stanie się nawykiem.</p>",nierob:"Nie przeszukuj telefonu ani pokoju bez rozmowy — to buduje mur, nie most.",zrob:"Znajdźcie wspólną aktywność, przy której rozmowa dzieje się przy okazji, nie na wprost."},{nazwa:"Dystans większy, niż powinien być w tym wieku",opis:"<p>Rozmowy kończą się na „nic” i „normalnie”, a wspólny czas trzeba wymuszać. W tym wieku to jeszcze łatwo odwrócić — ale nie samo z siebie.</p>",nierob:"Nie czekaj, aż samo się ułoży.",zrob:"Zacznijcie od jednej krótkiej, codziennej chwili bez telefonu — choćby 10 minut."}]},d:{dla:"Wynik dla relacji z dorosłym dzieckiem",pytania:[{o:"K",q:"Jak często macie kontakt — rozmowa, wiadomość, wizyta?",a:["Kilka razy w tygodniu.","Raz na tydzień lub dwa.","Raz w miesiącu albo rzadziej.","Kontakt jest zerwany."]},{o:"Z",q:"O ważnych sprawach w jego życiu — praca, związek, przeprowadzka — dowiadujesz się…",a:["Od niego, wśród pierwszych.","Od niego, ale po czasie.","Od innych.","Wcale albo przypadkiem."]},{o:"R",q:"Jak często w Waszych rozmowach pojawiają się rady, uwagi albo „kiedy w końcu…”?",a:["Rzadko.","Czasem.","Często.","Prawie zawsze — i wtedy rozmowa się kończy."]},{o:"W",q:"Wizyty i święta razem zwykle…",a:["Są przyjemne.","Są udane, choć z napięciem.","Kończą się spięciem.","Nie spędzamy ich razem."]},{o:"K",q:"Kto zwykle odzywa się pierwszy?",a:["Różnie, obie strony.","Częściej ja, ale dziecko też.","Prawie zawsze ja.","Ja — i często bez odpowiedzi."]},{o:"Z",q:"Jak myślisz, jak dziecko czuje się po rozmowie z Tobą?",a:["Lepiej niż przed rozmową.","Neutralnie.","Raczej zmęczone.","Unika rozmów, więc chyba źle."]},{o:"R",q:"Czy są tematy, których nie da się poruszyć bez kłótni?",a:["Nie.","Jeden czy dwa — omijamy je.","Kilka, i ciążą na każdej rozmowie.","Tak — i to przez nie kontakt się urwał."]},{o:"W",q:"Kiedy myślisz o tej relacji…",a:["Jest dobrze, chcę ją pogłębić.","Czuję, że coś się rozluźniło.","Martwię się, że się oddalamy.","Boję się, że to już koniec."]}],obszary:{K:{nazwa:"Kontakt",slabo:"Kontakt stał się rzadki i często to Ty musisz go podtrzymywać. Dorosłe dziecko odzywa się wtedy, gdy przewiduje, że po rozmowie poczuje się lepiej — i to jest jedyna dźwignia, jaką masz.",start:"W poradniku zacznij od części o tym, jak z menedżera stać się gospodarzem: nie zabiegać, tylko zapraszać."},Z:{nazwa:"Zaufanie",slabo:"O ważnych sprawach dowiadujesz się późno albo od innych. Zwykle nie z braku uczuć, tylko dlatego, że rozmowa z Tobą kosztuje dziecko więcej, niż mu daje.",start:"W poradniku zacznij od części o naprawie — o tym, jak rozmawiać, żeby dziecko chciało mówić więcej."},R:{nazwa:"Rozmowy",slabo:"Rozmowy często zamieniają się w rady, uwagi albo spór. Dla dorosłego dziecka każda niechciana rada brzmi jak ocena.",start:"W poradniku zacznij od rozdziałów o rozmowach bez rad i o tematach, które dzielą."},W:{nazwa:"Klimat relacji",slabo:"Spotkania są napięte albo ich nie ma, a Ty coraz częściej myślisz o tej relacji z lękiem. Zanim cokolwiek naprawisz, trzeba obniżyć napięcie po Twojej stronie.",start:"W poradniku zacznij od części o napięciach, a jeśli kontakt się urwał — od części o zerwanym kontakcie."}},startKlucz:"start",tomy:["t2"],poziomy:[{nazwa:"Relacja jest żywa",opis:"<p>Macie kontakt, rozmowy są dobre, a dziecko wraca do Ciebie z własnej woli. Po osiemnastce relacja jest dobrowolna — <b>to, co macie, pokazuje, że dziecko dobrze się przy Tobie czuje</b>.</p>",nierob:"Nie zamieniaj dobrej relacji w obowiązek. Stałe godziny telefonów i pretensje o brak kontaktu szybko to zmieniają.",zrob:"Wyślij w tym tygodniu jedną wiadomość bez pytania i bez prośby — o czymś, co przypomniało Ci o dziecku."},{nazwa:"Kontakt się rozrzedza",opis:"<p>Nie ma konfliktu, jest coraz rzadziej. Częściej to Ty dzwonisz, rozmowy są krótsze, a o ważnych sprawach dowiadujesz się po czasie. <b>To najlepszy moment na zmianę, bo nic się jeszcze nie zepsuło.</b></p>",nierob:"Nie wypominaj, że dziecko się nie odzywa. Wyrzut sprawia, że następny telefon jest jeszcze trudniejszy.",zrob:"Przy najbliższej rozmowie nie dawaj żadnej rady, nawet jeśli bardzo chcesz. Pytaj, słuchaj i zobacz, jak zakończy się rozmowa."},{nazwa:"Coraz dalej od siebie",opis:"<p>Kontakt jest rzadki i napięty, są tematy, których nie da się poruszyć, a spotkania kończą się spięciem. To bolesne, ale <b>wciąż jest z czego budować</b>: kontakt istnieje, trzeba zmienić to, jak się po nim czujecie.</p>",nierob:"Nie wracaj do starych sporów i nie próbuj wyjaśnić sobie wszystkiego w jednej rozmowie.",zrob:"Wyślij krótką, ciepłą wiadomość, która niczego nie oczekuje, i nie oceniaj jej skutku po jednym dniu."},{nazwa:"Kontakt jest zerwany albo bliski zerwania",opis:"<p>Odzywasz się bez odpowiedzi albo kontaktu nie ma wcale. Nikt uczciwy nie obieca, że dziecko wróci. <b>Możesz za to stać się człowiekiem, do którego dobrze jest wrócić</b> — i zadbać o siebie w czasie czekania.</p>",nierob:"Nie naciskaj przez rodzinę, posłańców, zdrowie czy święta. Każda forma nacisku zmniejsza szanse na powrót.",zrob:"Zanim napiszesz do dziecka, napisz list, którego nie wyślesz: co czujesz, co rozumiesz, za co chcesz przeprosić. To porządkuje myśli przed prawdziwą wiadomością.",ostrzezenie:"<b>Ważne.</b> Jeśli w tle była przemoc, uzależnienie albo krzywda, pierwszym krokiem jest wsparcie dla Ciebie — najlepiej terapia — a dopiero potem wiadomość do dziecka. Jeśli od dłuższego czasu czujesz przygnębienie i brak sił, porozmawiaj z lekarzem albo psychologiem. W kryzysie emocjonalnym możesz zadzwonić pod 116 123, a w nagłej sytuacji pod 112."}]}},n=[20,14,7,0],t=document.getElementById("kb-test2");if(t){var r=function(a){return t.querySelector(a)},s=null,d=null,c=0,k=[],y=null;r("#kb-wstecz").addEventListener("click",function(){c>0?(c--,u()):p("start")});var w="wynik";r("#kb-form").addEventListener("submit",function(i){i.preventDefault();var e=r("#kb-mail").value.trim();if(!/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/.test(e))return r("#kb-info").textContent="Wpisz adres e-mail w formacie twoj@email.pl.",void r("#kb-mail").focus();if(!r("#kb-zgoda").checked)return r("#kb-info").textContent="Zaznacz zgodę, żebyśmy mogli wysłać wiadomość.",void r("#kb-zgoda").focus();var o=r("#kb-wyslij");o.disabled=!0,o.textContent="Wysyłam…";var z=new URLSearchParams({email:e,cel:w,wiek:d,wynik:null===y.suma?"":String(y.suma),poziom:y.poziom,obszar_najslabszy:y.obszar,zgoda:"tak",data:(new Date).toISOString()});fetch(a.endpointMail,{method:"POST",mode:"no-cors",body:z}).then(function(){r("#kb-form").hidden=!0,r("#kb-info").innerHTML="wynik"===w?"<b>Wysłane.</b> Wynik trafi na podany adres.":"<b>Zapisane.</b> Damy znać w dniu premiery."}).catch(function(){o.disabled=!1,o.textContent="Spróbuj jeszcze raz",r("#kb-info").innerHTML='Nie udało się wysłać. Sprawdź połączenie albo napisz na <a href="mailto:'+a.mailKontakt+'">'+a.mailKontakt+"</a>."})}),r("#kb-jeszcze").addEventListener("click",function(){r("#kb-mail").value="",r("#kb-zgoda").checked=!1,h(),l(),p("start")}),document.addEventListener("click",function(a){var i=a.target.closest?a.target.closest('a[href^="#test"]'):null;if(i&&f(i.getAttribute("href"))){a.preventDefault();try{history.replaceState(null,"",i.getAttribute("href"))}catch(a){}}}),r("#kb-link-poradniki").setAttribute("href",a.linkPoradniki),l(),h(),location.hash&&setTimeout(function(){f(location.hash)},60)}function p(a){for(var i=t.querySelectorAll(".kb-ekran"),e=0;e<i.length;e++)i[e].classList.toggle("kb-on",i[e].getAttribute("data-kb")===a);t.getBoundingClientRect().top<0&&t.scrollIntoView({behavior:"smooth",block:"start"})}function m(a,i,e,o){var z=document.createElement("button");z.type="button",z.className="kb-opcja"+(e?" kb-wybrana":"");var n=document.createElement("span");n.className="kb-kropka";var t=document.createElement("span");if(t.textContent=a,i){var r=document.createElement("small");r.textContent=i,t.appendChild(r)}return z.appendChild(n),z.appendChild(t),z.addEventListener("click",function(){o(z)}),z}function l(){var a=r("#kb-wiek");a.innerHTML="",i.forEach(function(i){a.appendChild(m(i.etykieta,i.opis,!1,function(a){a.classList.add("kb-wybrana"),setTimeout(function(){b(i.id)},160)}))})}function b(a){if(d=a,"p3"===a)return y={suma:null,poziom:"ponizej 3 lat",obszar:""},r("#kb-dla").textContent="Dziecko poniżej 3 lat",r("#kb-poziom").textContent="Na ten wiek nie mamy jeszcze poradnika",r("#kb-punkty").textContent="Nie chcemy polecać Ci czegoś, co nie jest pisane dla Was.",r("#kb-opis").innerHTML="<p>Nasze poradniki zaczynają się od 3. roku życia. Najmłodsze dzieci budują więź przede wszystkim przez bliskość, przewidywalny rytm dnia i spokojną reakcję dorosłego na płacz — i to jest dziś najlepsze, co możesz dla tej relacji zrobić.</p><p>Mamy poradnik dla rodziców dzieci 3–7 lat. Przyda się, gdy dziecko skończy trzy lata, więc nie musisz go kupować dziś. <a href='#oferta-male'>Zobacz, co w nim jest</a></p>",r("#kb-ostrzezenie").innerHTML="",r("#kb-obszary-blok").hidden=!0,r("#kb-poradniki-tytul").hidden=!0,r("#kb-poradniki-tytul").nextElementSibling.hidden=!0,r("#kb-poradniki").innerHTML="",g(["t3"]),void p("wynik");s=z[a],c=0,k=new Array(s.pytania.length).fill(null),p("pytania"),u()}function u(){var a=s.pytania[c],i=s.pytania.length+1;r("#kb-licznik").textContent="Pytanie "+(c+2)+" z "+i,r("#kb-tag").textContent=s.obszary[a.o].nazwa,r("#kb-pasek").style.width=(c+1)/i*100+"%";var e=r("#kb-pytanie");e.textContent=a.q;var o=r("#kb-opcje");o.innerHTML="",a.a.forEach(function(a,i){var e=3-i;o.appendChild(m(a,null,k[c]===e,function(a){k[c]=e;for(var i=o.querySelectorAll(".kb-opcja"),z=0;z<i.length;z++)i[z].classList.remove("kb-wybrana");a.classList.add("kb-wybrana"),setTimeout(j,180)}))}),e.focus({preventScroll:!0})}function j(){c<s.pytania.length-1?(c++,u()):(!function(){var i=s.obszary,e=Object.keys(i),o={},z={};e.forEach(function(a){o[a]=0,z[a]=0}),s.pytania.forEach(function(a,i){o[a.o]+=k[i]||0,z[a.o]+=3});var t=k.reduce(function(a,i){return a+(i||0)},0),c=3*s.pytania.length,w=n.findIndex(function(a){return t>=a}),p=s.poziomy[w],m=e.reduce(function(a,i){return o[a]/z[a]<=o[i]/z[i]?a:i});e.every(function(a){return o[a]/z[a]===o[m]/z[m]})&&(m=null);y={suma:t,poziom:p.nazwa,obszar:m?i[m].nazwa:"brak"},r("#kb-dla").textContent=s.dla,r("#kb-poziom").textContent=p.nazwa,r("#kb-punkty").textContent=t+" z "+c+" punktów. Zapisz wynik i powtórz test za dwa tygodnie — zmianę najlepiej widać w porównaniu.",r("#kb-opis").innerHTML=(l=p,l.opis+'<div class="kb-ramka kb-uwaga"><h3>Czego teraz nie robić</h3><p>'+l.nierob+'</p></div><div class="kb-ramka kb-wsk"><h3>Jedna rzecz na ten tydzień</h3><p>'+l.zrob+"</p></div>"),r("#kb-ostrzezenie").innerHTML=p.ostrzezenie?'<div class="kb-ramka kb-uwaga" style="margin-top:26px"><p>'+p.ostrzezenie+"</p></div>":"",r("#kb-obszary-blok").hidden=!1;var l;var b=r("#kb-obszary");b.innerHTML="",e.forEach(function(a){var e=document.createElement("div");e.className="kb-wiersz"+(a===m?" kb-slaby":""),e.innerHTML='<div class="kb-etykieta"><span class="kb-nazwa">'+i[a].nazwa+(a===m?" — tu jest najciaśniej":"")+'</span><span class="kb-ile">'+o[a]+" z "+z[a]+'</span></div><div class="kb-tor"><i data-w="'+Math.round(o[a]/z[a]*100)+'"></i></div>',b.appendChild(e)}),setTimeout(function(){for(var a=b.querySelectorAll(".kb-tor i"),i=0;i<a.length;i++)a[i].style.width=a[i].getAttribute("data-w")+"%"},80),r("#kb-komentarz").innerHTML=m?"<b>"+i[m].nazwa+".</b> "+i[m].slabo:"Żaden obszar nie odstaje od pozostałych — zmiana w jednym pociągnie za sobą resztę.",function(i,e,o,z){var n=r("#kb-poradniki-tytul");n.hidden=!1,n.nextElementSibling.hidden=!1,n.textContent=i.length>1?"Poradniki dla Was":"Poradnik dla Was";var t=r("#kb-poradniki");if(t.innerHTML="",z){var s=document.createElement("p");s.textContent=z,s.style.margin="0",t.appendChild(s)}if(i.forEach(function(z){var n=a.tomy[z],r=document.createElement("div");r.className="kb-poradnik"+(n.dostepny?"":" kb-wkrotce");var s='<p class="kb-dla">'+n.dla+"</p><h3>"+n.tytul+"</h3>";n.dostepny?(o&&1===i.length&&(s+="<p>"+o+"</p>"),e&&1===i.length&&(s+='<p class="kb-start">'+e+"</p>"),s+='<p class="kb-cena">'+n.cena+'</p><a class="kb-btn" href="'+n.link+'">Zobacz, co dostajesz</a><p class="kb-mikro">'+n.mikro+"</p>"):s+='<p class="kb-status">W przygotowaniu</p><p>Tekst jest gotowy, kończymy ilustracje. Zostaw maila poniżej, a dostaniesz wiadomość w dniu premiery.</p>',n.okladka&&(r.className+=" kb-z-okl",s='<img class="kb-por-okl" src="'+n.okladka+'" alt="Okładka poradnika „'+n.tytul+'”" loading="lazy"><div class="kb-por-tresc">'+s+"</div>"),r.innerHTML=s,t.appendChild(r)}),e&&i.length>1){var d=document.createElement("p");d.className="kb-start",d.style.margin="0",d.textContent=e,t.appendChild(d)}}(s.tomy,m?i[m][s.startKlucz]:"",p.oferta,s.wstepPoradniki),g(s.tomy);try{var u=JSON.parse(localStorage.getItem("kb_test2")||"{}");u[d]={suma:t,maks:c,poziom:p.nazwa,data:(new Date).toISOString()},localStorage.setItem("kb_test2",JSON.stringify(u))}catch(a){}}(),p("wynik"))}function g(i){var e=i.filter(function(i){return!a.tomy[i].dostepny}),o=r("#kb-zapis");r("#kb-form").hidden=!1,r("#kb-info").textContent="";var z=r("#kb-wyslij");z.disabled=!1,e.length?(w="lista-"+e.join("-"),r("#kb-zapis-tytul").textContent="Daj mi znać, gdy poradnik będzie gotowy",r("#kb-zapis-tekst").textContent=null===y.suma?"Jedna wiadomość w dniu premiery i kilka praktycznych wskazówek dla rodziców najmłodszych dzieci.":"Wyślemy Ci też ten wynik z opisem i przypomnimy o powtórce testu za dwa tygodnie.",z.textContent="Zapisuję się",r("#kb-zgoda-tekst").textContent="Chcę dostać informację o premierze poradnika i wskazówki o relacji z dzieckiem. Zgodę mogę wycofać jednym kliknięciem w każdej wiadomości."):(w="wynik",r("#kb-zapis-tytul").textContent="Nie kupujesz dziś? Weź chociaż wynik na maila",r("#kb-zapis-tekst").textContent="Wyślemy Ci ten wynik z opisem i przypomnimy o powtórce testu za dwa tygodnie — wtedy zobaczysz różnicę.",z.textContent="Wyślij mi wynik",r("#kb-zgoda-tekst").textContent="Chcę dostać wynik testu i kolejne wskazówki o relacji z dzieckiem. Zgodę mogę wycofać jednym kliknięciem w każdej wiadomości.");var n=r("#kb-reczny");if(a.endpointMail)o.hidden=!1,n.hidden=!0;else if(r("#kb-form").hidden=!0,e.length){o.hidden=!1,n.hidden=!1;var t=encodeURIComponent("Zapis na listę: "+e.map(function(i){return a.tomy[i].tytul}).join(", "));n.innerHTML='Napisz na <a href="mailto:'+a.mailKontakt+"?subject="+t+'">'+a.mailKontakt+"</a> — dopiszemy Cię do listy i damy znać w dniu premiery."}else o.hidden=!0}function h(){try{var a=JSON.parse(localStorage.getItem("kb_test2")||"{}"),i=Object.keys(a);if(!i.length)return;var e={w:"7–9 lat",m:"10–12 lat",s:"13–15 lat",n:"16–19 lat",d:"dorosłe dziecko"},o=r("#kb-poprzedni");o.hidden=!1,o.textContent="Twoje poprzednie wyniki: "+i.map(function(i){return e[i]+" — "+a[i].suma+" z "+a[i].maks+" ("+new Date(a[i].data).toLocaleDateString("pl-PL")+")"}).join("; ")+". Zobacz, co się zmieniło."}catch(a){}}function f(a){var i=/^#test(?:-(p3|w|m|s|n|d))?$/.exec(a||"");return!!i&&(t.scrollIntoView({behavior:"smooth",block:"start"}),i[1]?b(i[1]):(l(),p("start")),!0)}}()</script>
<!-- ═══════════════════════════════════════════════════════════════════════
KROKBLIŻEJ — test w okienku (22.09.2026)
Co robi:
- przycisk „Zrób bezpłatny test” i wszystkie linki #test, #test-m/-s/-n/-d
otwierają test na pełnym ekranie (bez przewijania strony);
- link z wiekiem (np. #test-n) od razu zaznacza wiek i pokazuje 1. pytanie;
- wybór wieku w teście na stronie też przełącza na pełny ekran;
- „Zamknij test”, klawisz Esc albo przejście do oferty zamyka okienko.
Jak wyłączyć: usuń cały ten blok (od tego komentarza do </script>).
═══════════════════════════════════════════════════════════════════════ -->
<style>
html.kb-modal-on,html.kb-modal-on body{overflow:hidden!important}
#kb-test2.kb-modal{position:fixed;inset:0;z-index:2147483000;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;margin:0;padding:76px 20px 56px;animation:kbModalIn .25s ease both}
@keyframes kbModalIn{from{opacity:0}to{opacity:1}}
#kb-test2 .kb-zamknij{display:none}
#kb-test2.kb-modal .kb-zamknij{display:inline-flex;align-items:center;gap:8px;position:fixed;top:14px;right:14px;z-index:3;background:var(--card);border:1px solid var(--line);color:var(--sage-deep);font:700 15px 'Nunito Sans','Segoe UI',system-ui,sans-serif;padding:9px 14px 9px 18px;border-radius:999px;cursor:pointer;box-shadow:var(--shadow)}
#kb-test2.kb-modal .kb-zamknij:hover{border-color:var(--sage)}
#kb-test2.kb-modal .kb-zamknij:focus-visible{outline:3px solid var(--sage-deep);outline-offset:2px}
#kb-test2.kb-modal .kb-zamknij span{font-size:24px;line-height:1;font-weight:400}
@media (max-width:560px){#kb-test2.kb-modal{padding:68px 16px 44px}#kb-test2 #kb-wiek .kb-opcja{min-height:58px}}
@media (prefers-reduced-motion:reduce){#kb-test2.kb-modal{animation:none}}
</style>
<script>
(function(){
if(window.__kbModal) return; window.__kbModal=1;
var WIEK={p3:0,m:1,s:2,n:3,d:4};
var miejsce=null;
function T(){return document.getElementById('kb-test2');}
function otwarte(){var t=T();return !!(t&&t.classList.contains('kb-modal'));}
function przycisk(t){
if(t.querySelector(':scope > .kb-zamknij')) return;
var b=document.createElement('button'); b.type='button'; b.className='kb-zamknij';
b.innerHTML='Zamknij test <span aria-hidden="true">×</span>';
b.addEventListener('click',function(){zamknij(true);});
t.insertBefore(b,t.firstChild);
}
function otworz(){
var t=T(); if(!t||otwarte()) return;
przycisk(t);
// EasyTools animuje sekcje transformem, a w środku transformu position:fixed nie działa — przenosimy test do <body> na czas otwarcia
if(t.parentNode!==document.body){ miejsce=document.createComment('kb-test2'); t.parentNode.insertBefore(miejsce,t); document.body.appendChild(t); }
t.classList.add('kb-modal'); t.setAttribute('role','dialog'); t.setAttribute('aria-modal','true');
t.setAttribute('aria-label','Test: gdzie dziś jest Wasza relacja');
document.documentElement.classList.add('kb-modal-on'); t.scrollTop=0;
}
function zamknij(przewin){
var t=T(); if(!t||!otwarte()) return;
t.classList.remove('kb-modal'); t.removeAttribute('role'); t.removeAttribute('aria-modal'); t.removeAttribute('aria-label');
document.documentElement.classList.remove('kb-modal-on');
if(miejsce&&miejsce.parentNode){ miejsce.parentNode.insertBefore(t,miejsce); miejsce.parentNode.removeChild(miejsce); } miejsce=null;
if(przewin){ try{t.scrollIntoView({block:'start'});}catch(_){} }
}
function wybierzWiek(k){
var t=T(); if(!t||!(k in WIEK)) return;
var bt=t.querySelectorAll('#kb-wiek .kb-opcja'); if(bt[WIEK[k]]) bt[WIEK[k]].click();
}
function hashZ(href){var i=href.indexOf('#'); return i<0?'':href.slice(i+1).split(/[?&]/)[0];}
window.addEventListener('click',function(e){
if(e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey) return;
var a=e.target&&e.target.closest?e.target.closest('a[href]'):null; if(!a) return;
var href=a.getAttribute('href')||'', h=hashZ(href), u;
try{u=new URL(href,location.href);}catch(_){return;}
var tutaj=(u.host===location.host&&u.pathname===location.pathname)||/(^|\.)easy\.tools$/.test(u.host)&&u.pathname==='/';
var m=/^test(?:-(p3|m|s|n|d))?$/.exec(h);
if(tutaj&&(m||h==='kb-test2')){
e.preventDefault(); e.stopPropagation();
otworz(); if(m&&m[1]) wybierzWiek(m[1]);
return;
}
if(otwarte()) zamknij(false);
// kotwice #poradniki, #faq itp. dodane skryptem wskazują przez <base> na app.easy.tools — przewijamy tutaj
if(h&&!/^oferta/.test(h)&&u.host!==location.host&&/(^|\.)easy\.tools$/.test(u.host)&&u.pathname==='/'){
var el=document.getElementById(h);
if(el){e.preventDefault(); el.scrollIntoView({behavior:'smooth',block:'start'});}
}
},true);
document.addEventListener('keydown',function(e){ if(e.key==='Escape'&&otwarte()) zamknij(true); });
try{
new MutationObserver(function(ms){
for(var i=0;i<ms.length;i++){
var el=ms[i].target;
if(!el.classList||!el.classList.contains('kb-ekran')||!el.classList.contains('kb-on')) continue;
if(!el.closest||!el.closest('#kb-test2')) continue;
if(el.getAttribute('data-kb')!=='start') otworz();
var t=T(); if(otwarte()) t.scrollTop=0;
}
}).observe(document.documentElement,{attributes:true,attributeFilter:['class'],subtree:true});
}catch(_){}
})();
</script>