<?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>Stíny | Snilkuvsvet.cz</title>
	<atom:link href="https://snilkuvsvet.cz/tag/stiny/feed/" rel="self" type="application/rss+xml" />
	<link>https://snilkuvsvet.cz/tag/stiny/</link>
	<description>Pohádky na dobrou noc a nápady pro děti</description>
	<lastBuildDate>Mon, 05 Oct 2026 23:37:33 +0000</lastBuildDate>
	<language>cs</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://snilkuvsvet.cz/wp-content/uploads/2025/10/cropped-cropped-Adobe-Express-file-1-32x32.png</url>
	<title>Stíny | Snilkuvsvet.cz</title>
	<link>https://snilkuvsvet.cz/tag/stiny/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Halloweenské pracovní listy pro děti: 8 úkolů k vytisknutí zdarma</title>
		<link>https://snilkuvsvet.cz/halloweenske-pracovni-listy/</link>
					<comments>https://snilkuvsvet.cz/halloweenske-pracovni-listy/#respond</comments>
		
		<dc:creator><![CDATA[Mgr. Jana Russková]]></dc:creator>
		<pubDate>Mon, 05 Oct 2026 23:17:36 +0000</pubDate>
				<category><![CDATA[Halloweenské aktivity]]></category>
		<category><![CDATA[Pracovní listy k vytištění]]></category>
		<category><![CDATA[Bludiště]]></category>
		<category><![CDATA[Grafomotorika]]></category>
		<category><![CDATA[Halloween]]></category>
		<category><![CDATA[Halloweenské pracovní listy]]></category>
		<category><![CDATA[Počítání]]></category>
		<category><![CDATA[Pracovní listy]]></category>
		<category><![CDATA[Předškoláci]]></category>
		<category><![CDATA[První třída]]></category>
		<category><![CDATA[Stíny]]></category>
		<guid isPermaLink="false">https://snilkuvsvet.cz/halloweenske-pracovni-listy/</guid>

					<description><![CDATA[<p>Stáhněte si zdarma 8 halloweenských pracovních listů pro děti: počítání, stíny, bludiště, grafomotoriku a logické řady jako samostatné obrázky JPG.</p>
<p>Článek <a href="https://snilkuvsvet.cz/halloweenske-pracovni-listy/">Halloweenské pracovní listy pro děti: 8 úkolů k vytisknutí zdarma</a> se nejdříve objevil na <a href="https://snilkuvsvet.cz">Snilkuvsvet.cz</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="has-drop-cap wp-block-paragraph">Dýně se smějí, netopýři poletují mezi přerušovanými čarami a jeden malý duch se ztratil v bludišti. Tahle halloweenská parta ale nechce nikoho strašit. Potřebuje děti, které umějí počítat, hledat správné stíny, sledovat logické řady a vést tužku po klikatých cestách.</p>



<p class="wp-block-paragraph">Připravili jsme <strong>osm halloweenských pracovních listů pro děti přibližně od 4 do 7 let</strong>. Najdete mezi nimi počítání, jednoduché sčítání, spojování stínů, bludiště, grafomotorická cvičení i logické řady. Každý list je připravený samostatně jako obrázek JPG ve formátu A4.</p>



<blockquote class="wp-block-quote snilek-box is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Snílkova strašidelně důležitá zpráva:</strong> Duchové v těchto pracovních listech nekoušou. Maximálně trochu zabloudí, spletou si stín nebo zapomenou, která dýně následuje v řadě.</p></blockquote>



<h2 class="wp-block-heading">Halloweenské pracovní listy ke stažení</h2>



<p class="wp-block-paragraph">Sada obsahuje osm samostatných stran A4. Kliknutím na vybraný list jej můžete otevřít v plné velikosti, uložit a vytisknout. Barevné obrázky jsou výrazné, ale zadání zůstávají srozumitelná i při černobílém tisku.</p>



<h3 class="wp-block-heading">Co sada obsahuje</h3>



<figure class="wp-block-table"><table><thead><tr><th>Číslo</th><th>Pracovní list</th><th>Co dítě procvičuje</th><th>Věk</th></tr></thead><tbody><tr><td>1</td><td>Spočítej obrázky</td><td>počítání do 8, přiřazení čísla</td><td>4–6 let</td></tr><tr><td>2</td><td>Halloweenské sčítání</td><td>jednoduché sčítání do 10</td><td>5–7 let</td></tr><tr><td>3</td><td>Najdi správný stín</td><td>zrakové rozlišování a spojování</td><td>4–6 let</td></tr><tr><td>4</td><td>Který stín patří dýni?</td><td>pozorování tvaru a detailů</td><td>4–6 let</td></tr><tr><td>5</td><td>Duch hledá dýni</td><td>orientace, soustředění a vedení čáry</td><td>4–7 let</td></tr><tr><td>6</td><td>Leť s netopýrem</td><td>rovné čáry, hranaté dráhy a vlnovky</td><td>4–7 let</td></tr><tr><td>7</td><td>Dokresli pavučiny</td><td>kruhový pohyb a přesnost tahu</td><td>5–7 let</td></tr><tr><td>8</td><td>Co patří do řady?</td><td>logické řady a pravidelnost</td><td>5–7 let</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">1. Spočítej halloweenské obrázky</h2>



<p class="wp-block-paragraph">Na prvním listu děti počítají dýně, duchy, netopýry, čarodějnické klobouky a pavouky. U každého řádku vybírají ze tří čísel a správnou odpověď zakroužkují. Úkol procvičuje počítání po jedné, spojení množství s číslicí a soustředění na jeden řádek.</p>


    
<style id="ss-omalovanka-print-css">
@media print {
  @page { size: A4; margin: 10mm; }
  html, body { height: auto !important; }
  body * { visibility: hidden !important; }
  .ss-omalovanka, .ss-omalovanka * { visibility: visible !important; }
  .ss-omalovanka {
    position: fixed !important; inset: 0 !important; margin: 0 !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
  }
  .ss-ctrls { display: none !important; }
  .ss-omalovanka img {
    max-width: 100% !important; max-height: 100vh !important;
    width: auto !important; height: auto !important;
    box-shadow: none !important; border-radius: 0 !important;
  }
}
</style>    <div id="ss-omalovanka-a3d3a0ed-0eb5-4072-9c0a-df3852d478c1" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-01-pocitani.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-01-pocitani.jpg"
             alt="Halloweenský pracovní list – spočítej obrázky a zakroužkuj správné číslo"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-01-pocitani.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-a3d3a0ed-0eb5-4072-9c0a-df3852d478c1');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">2. Halloweenské sčítání do 10</h2>



<p class="wp-block-paragraph">Druhý list přidává jednoduché sčítání. Dítě spočítá obrázky v první skupině, potom obrázky za znaménkem plus a celkový počet zapíše do rámečku. Pokud dítě ještě se znaménky nepracuje, můžete příklad přečíst jako krátký příběh: „Máme dvě dýně a přidáme k nim tři duchy. Kolik obrázků je dohromady?“</p>


        <div id="ss-omalovanka-70fd7063-4020-46b9-9839-926096d30524" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-02-scitani.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-02-scitani.jpg"
             alt="Halloweenský pracovní list – obrázkové sčítání do deseti"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-02-scitani.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-70fd7063-4020-46b9-9839-926096d30524');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">3. Najdi správný stín</h2>



<p class="wp-block-paragraph">Dýně, duch, netopýr, klobouk a pavouk hledají svůj stín. Dítě spojuje barevné obrázky na levé straně s odpovídajícími siluetami napravo. Nechte dítě nejdříve všechny dvojice ukázat prstem a teprve potom je spojit tužkou. List tak zůstane přehlednější.</p>


        <div id="ss-omalovanka-ba165739-7bd0-4158-b5e6-a88ab53b280c" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-03-stiny.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-03-stiny.jpg"
             alt="Halloweenský pracovní list – spoj barevné obrázky s jejich stíny"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-03-stiny.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-ba165739-7bd0-4158-b5e6-a88ab53b280c');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">4. Který stín patří dýni?</h2>



<p class="wp-block-paragraph">Čtvrtý pracovní list se soustředí na detailnější zrakové rozlišování. Dítě porovnává velkou dýni se čtyřmi siluetami. Sleduje tvar plodu, šířku, listy i směr stopky a zakroužkuje jediný totožný stín.</p>


        <div id="ss-omalovanka-3fee6aa8-28d9-4cc4-95cd-a8c634b77a3a" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-04-stin-dyne.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-04-stin-dyne.jpg"
             alt="Halloweenský pracovní list – najdi správný stín dýně"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-04-stin-dyne.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-3fee6aa8-28d9-4cc4-95cd-a8c634b77a3a');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">5. Duch hledá dýni</h2>



<p class="wp-block-paragraph">Malý duch potřebuje projít bludištěm až k dýni. Cestu je nutné vést průchody a nepřeskakovat žádnou zeď. Čtyřletému dítěti můžete dovolit nejdříve hledat cestu prstem. Starší dítě ji může rovnou kreslit tužkou.</p>


        <div id="ss-omalovanka-df6bb7fb-25d0-48cc-8d2d-a517b33ad19b" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-05-bludiste.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-05-bludiste.jpg"
             alt="Halloweenské bludiště – pomoz duchovi najít cestu k dýni"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-05-bludiste.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-df6bb7fb-25d0-48cc-8d2d-a517b33ad19b');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">6. Leť s netopýrem</h2>



<p class="wp-block-paragraph">Netopýr letí k měsíci po pěti různých drahách. Dítě obtahuje rovnou čáru, hranaté dráhy, široké vlny i hustší vlnovky. Důležitější než přesné kopírování každé čárky je klidný a plynulý pohyb zleva doprava.</p>


        <div id="ss-omalovanka-ab1fe79e-e531-45c8-9364-5e63ce1d1437" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-06-grafomotorika.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-06-grafomotorika.jpg"
             alt="Halloweenský grafomotorický pracovní list – veď netopýra k měsíci"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-06-grafomotorika.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-ab1fe79e-e531-45c8-9364-5e63ce1d1437');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">7. Dokresli pavučiny</h2>



<p class="wp-block-paragraph">Na sedmém listu čekají čtyři pavučiny s přerušovanými kruhy. Dítě je postupně obtahuje a dokončuje pavoučí sítě. Pokud je úkol pro ruku příliš náročný, začněte jednou pavučinou a zbytek nechte na další den.</p>


        <div id="ss-omalovanka-7bed6ccb-a883-496a-8247-22917801b5d1" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-07-pavuciny.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-07-pavuciny.jpg"
             alt="Halloweenský grafomotorický pracovní list – obtáhni kruhy a dokonči pavučiny"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-07-pavuciny.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-7bed6ccb-a883-496a-8247-22917801b5d1');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">8. Co patří do řady?</h2>



<p class="wp-block-paragraph">Poslední list obsahuje pět obrázkových řad. Dítě hledá pravidlo střídání a do prázdného rámečku nakreslí obrázek, který má následovat. Odpověď neprozrazujte hned. Pomozte dítěti přečíst řadu nahlas: „dýně, duch, dýně, duch…“ Pravidlo pak často zaslechne samo.</p>


        <div id="ss-omalovanka-9d95ed8c-77ef-4af4-9242-4cbe88b0702d" class="ss-omalovanka" style="text-align:center;max-width:820px;margin:0 auto;">
      <!-- Ovládání (horní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-08-logicke-rady.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>
        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>

      <figure style="margin:0;">
        <img decoding="async" class="ss-omalovanka-img"
             src="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-08-logicke-rady.jpg"
             alt="Halloweenský pracovní list – doplň obrázek, který patří do logické řady"
             style="max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08);" />
      </figure>

      <!-- Ovládání (dolní) -->
      <div class="ss-ctrls" style="display:flex;gap:12px;justify-content:center;margin:14px 0;flex-wrap:wrap;">
        <a class="ss-omalovanka-download"
           href="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweensky-pracovni-list-08-logicke-rady.jpg"
                      style="background:#f6d1f5;color:#222;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600;display:inline-block;">
           🖼️ Stáhnout JPG
        </a>
		  <button type="button" class="ss-omalovanka-pdf"
        style="background:#e7e0ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
  📄 Stáhnout PDF
</button>

        <button type="button" class="ss-omalovanka-print"
                style="background:#cfe8ff;color:#222;padding:10px 16px;border-radius:10px;font-weight:600;border:none;cursor:pointer;">
          🖨️ Vytisknout
        </button>
      </div>
    </div>

    <script>
    (function(){
      const root = document.getElementById('ss-omalovanka-9d95ed8c-77ef-4af4-9242-4cbe88b0702d');
      if(!root) return;

      const img  = root.querySelector('.ss-omalovanka-img');
      const dls  = root.querySelectorAll('.ss-omalovanka-download');
      const prts = root.querySelectorAll('.ss-omalovanka-print');
	    const pdfs = root.querySelectorAll('.ss-omalovanka-pdf');

  const ajaxUrl = "https:\/\/snilkuvsvet.cz\/wp-admin\/admin-ajax.php";

  function pdfNameFromAlt(alt) {
    const base = (alt || 'Omalovanka-SnilkuvSvet')
      .trim()
      .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
      .replace(/[^a-zA-Z0-9]+/g,'-')
      .replace(/^-+|-+$/g,'');
    return (base || 'Omalovanka-SnilkuvSvet') + '.pdf';
  }

  pdfs.forEach(btn => {
    btn.addEventListener('click', function(){
      const imageUrl = img.src;

      const explicit = false;
      const desiredPdf = explicit
        ? ("" + '.pdf')
        : pdfNameFromAlt(img.alt);

      const url =
        ajaxUrl +
        '?action=ss_omalovanka_pdf' +
        '&src=' + encodeURIComponent(imageUrl) +
        '&name=' + encodeURIComponent(desiredPdf);

      window.location.href = url;
    });
  });



      function filenameFromAlt(alt, ext) {
        const base = (alt || 'Omalovanka-SnilkuvSvet')
          .trim()
          .normalize('NFD').replace(/[\u0300-\u036f]/g,'')
          .replace(/[^a-zA-Z0-9]+/g,'-')
          .replace(/^-+|-+$/g,'');
        return (base || 'Omalovanka-SnilkuvSvet') + '.' + (ext || 'jpg');
      }

      // Stažení s hezkým názvem (ALT nebo filename="" ze shortcode)
      dls.forEach(link => {
        link.addEventListener('click', async function(e){
          e.preventDefault();
          const url = img.src;
          const explicit = false;
          const ext = (url.split('.').pop() || 'jpg').split('?')[0].toLowerCase();
          const desired = explicit ? "" : filenameFromAlt(img.alt, ext);

          try {
            const res = await fetch(url, {mode: 'cors', cache: 'no-cache'});
            const blob = await res.blob();
            const blobUrl = URL.createObjectURL(blob);
            const a = document.createElement('a');
            a.href = blobUrl; a.download = desired;
            document.body.appendChild(a); a.click(); a.remove();
            URL.revokeObjectURL(blobUrl);
          } catch(err) {
            // Fallback
            link.setAttribute('download', desired);
            window.location.href = url;
          }
        }, {passive:false});
      });

      // === TISK: pevné A4 plátno v mm (vždy 1 stránka) ===
function printOmalovanka() {
  if (!img) return;

  const imageUrl = img.src;
  const docTitle = (img.alt && img.alt.trim()) ? img.alt.trim() : 'Omalovánka';
  const PAD = 6; // mm

  // jistější zjištění orientace (když naturalWidth/Height ještě není, použijeme fallback)
  const iw = img.naturalWidth || img.width || 0;
  const ih = img.naturalHeight || img.height || 0;
  const isLandscape = iw && ih ? (iw > ih) : false;

  // A4 rozměry dle orientace
  const pageW = isLandscape ? 297 : 210;
  const pageH = isLandscape ? 210 : 297;

  const html = `
<!DOCTYPE html><html><head><meta charset="utf-8" />
<title>${docTitle}</title>
<meta name="viewport" content="width=device-width,initial-scale=1" />
<style>
  @page { size: ${pageW}mm ${pageH}mm; margin: 0; }
  html, body { height: 100%; }
  body {
    margin: 0; padding: 0;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: #fff !important;
  }
  .page {
    width: ${pageW}mm; height: ${pageH}mm;
    padding: ${PAD}mm;
    box-sizing: border-box;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    background: #fff !important;
  }
  .page > img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
    background: #fff !important;
  }
</style>
</head>
<body>
  <div class="page">
    <img decoding="async" src="${imageUrl}" alt="${docTitle}" />
  </div>
  <script>
    document.title = ${JSON.stringify(docTitle)};
    window.onload = function(){ setTimeout(function(){ window.print(); window.close(); }, 60); };
  <\/script>
</body></html>`;

  const w = window.open('', '_blank');
  if(!w){ alert('Tisk se nepodařilo spustit. Povolte prosím vyskakovací okna.'); return; }
  w.document.write(html);
  w.document.close();
  try { w.focus(); } catch(_) {}
}


      // Klik na tlačítka „Vytisknout“
      prts.forEach(btn => btn.addEventListener('click', printOmalovanka));

      // Záchyt Ctrl/Cmd+P → použij náš tisk (jednou na stránku)
      if (!window.__ssOmalovankaCtrlPBound) {
        window.__ssOmalovankaCtrlPBound = true;
        document.addEventListener('keydown', function(e){
          const key = (e.key || '').toLowerCase();
          const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
          const combo = (key === 'p') && ((isMac && e.metaKey) || (!isMac && e.ctrlKey));
          if (combo) {
            e.preventDefault();
            e.stopPropagation();
            try { printOmalovanka(); } catch(_) {}
            return false;
          }
        }, true);
      }
    })();
    </script>
    



<h2 class="wp-block-heading">Pro jak staré děti jsou listy vhodné</h2>



<h3 class="wp-block-heading">Děti od 4 let</h3>



<p class="wp-block-paragraph">Začněte počítáním obrázků, hledáním stínů a nejjednoduššími grafomotorickými čarami. Zadání dítěti přečtěte a jednu úlohu vyřešte společně jako ukázku.</p>



<h3 class="wp-block-heading">Děti od 5 do 6 let</h3>



<p class="wp-block-paragraph">Mohou postupně zvládnout celou sadu. U sčítání používejte obrázky jako názornou pomůcku a u logických řad nechte dítě pravidlo nejdříve slovně popsat.</p>



<h3 class="wp-block-heading">Děti od 7 let</h3>



<p class="wp-block-paragraph">Pro prvňáky bude většina listů spíše lehčí. Mohou proto vymyslet vlastní logickou řadu, zapsat sčítání bez obrázků nebo vytvořit podobný úkol pro spolužáka.</p>



<h2 class="wp-block-heading">Jak pracovní listy vytisknout</h2>



<ul class="wp-block-list"><li>Tiskněte na <strong>formát A4 na výšku</strong>.</li><li>V nastavení tiskárny zvolte skutečnou velikost nebo přizpůsobení stránce.</li><li>Pro běžnou práci stačí kancelářský papír o gramáži 80 g/m².</li><li>Pro opakované používání můžete listy zalaminovat a kreslit stíratelným fixem.</li><li>Grafomotorické listy nezmenšujte na dvě stránky na jeden papír – dětem by se příliš zúžily dráhy.</li><li>Úkoly zůstávají srozumitelné také při černobílém tisku.</li></ul>



<h2 class="wp-block-heading">Jak sadu využít ve školce, škole nebo družině</h2>



<p class="wp-block-paragraph">Nemusíte dětem rozdat všech osm listů najednou. Pro jednu klidovou aktivitu vyberte dvě až tři stránky:</p>



<ul class="wp-block-list"><li><strong>matematický blok:</strong> listy 1 a 2,</li><li><strong>zrakové rozlišování:</strong> listy 3 a 4,</li><li><strong>soustředění a orientace:</strong> listy 5 a 8,</li><li><strong>grafomotorická rozcvička:</strong> listy 6 a 7.</li></ul>



<p class="wp-block-paragraph">Jednotlivé listy můžete rozmístit po třídě jako stanoviště. Děti se po dokončení úkolu přesunou k dalšímu stolku. Z obyčejného vyplňování se tak stane malá halloweenská výprava.</p>



<p class="wp-block-paragraph">Další inspiraci najdete v rubrice <a href="https://snilkuvsvet.cz/inspirace-pro-volny-cas/aktivity-a-hry/tematicke-aktivity/halloweenske-aktivity/">Halloweenské aktivity</a>. Navázat můžete také <a href="https://snilkuvsvet.cz/omalovanky/omalovanky-halloween/">halloweenskými omalovánkami</a> nebo dalšími <a href="https://snilkuvsvet.cz/inspirace-pro-volny-cas/pracovni-listy/">pracovními listy k vytištění</a>.</p>



<h2 class="wp-block-heading">Řešení pracovních listů</h2>



<ol class="wp-block-list"><li><strong>Počítání:</strong> 3, 5, 7, 4, 6, 8.</li><li><strong>Sčítání:</strong> 5, 6, 7, 7, 8.</li><li><strong>Spojování stínů:</strong> 1–B, 2–D, 3–E, 4–A, 5–C.</li><li><strong>Stín dýně:</strong> správná odpověď je číslo 3.</li><li><strong>Bludiště:</strong> cesta vede od otvoru vlevo nahoře k otvoru vpravo dole.</li><li><strong>Grafomotorické čáry:</strong> bez jediného přesného řešení.</li><li><strong>Pavučiny:</strong> bez jediného přesného řešení.</li><li><strong>Logické řady:</strong> dýně, pavouk, duch, pavouk, duch.</li></ol>



<h2 class="wp-block-heading">Nejčastější otázky</h2>



<h3 class="wp-block-heading">Jsou halloweenské pracovní listy zdarma?</h3>



<p class="wp-block-paragraph">Ano. Všech osm listů si můžete otevřít, uložit a vytisknout zdarma jako samostatné obrázky JPG.</p>



<h3 class="wp-block-heading">Jsou úkoly vhodné i pro školku?</h3>



<p class="wp-block-paragraph">Ano. Jednodušší listy zvládnou děti přibližně od čtyř let. Sčítání, pavučiny a složitější logické řady jsou vhodnější pro předškoláky a prvňáky.</p>



<h3 class="wp-block-heading">Je nutný barevný tisk?</h3>



<p class="wp-block-paragraph">Není. Barevné ilustrace listy oživují, ale všechny úkoly zůstávají čitelné a řešitelné také při černobílém tisku.</p>



<h3 class="wp-block-heading">Mohu listy použít ve škole nebo školce?</h3>



<p class="wp-block-paragraph">Ano, můžete je vytisknout pro svou třídu, družinu nebo domácí skupinu. Materiály nejsou určené k dalšímu prodeji ani ke zveřejnění na jiném webu jako vlastní soubory.</p>



<h2 class="wp-block-heading">Na závěr</h2>



<p class="wp-block-paragraph">Osm pracovních listů nabízí dost halloweenské atmosféry, aby děti zaujaly, ale žádné drastické obrázky ani skutečné strašení. Dýně, duchové a netopýři tu slouží hlavně jako nenápadní pomocníci při počítání, grafomotorice a logickém přemýšlení.</p>



<p class="wp-block-paragraph">Vytiskněte celou sadu nebo vyberte jen úkol, který se dítěti právě hodí. Jedna stránka zabere několik minut, nezpůsobí doma výbuch třpytek a po dokončení ji lze ještě domalovat. Na halloweenskou aktivitu je to poměrně slušná bilance.</p>

<p>Článek <a href="https://snilkuvsvet.cz/halloweenske-pracovni-listy/">Halloweenské pracovní listy pro děti: 8 úkolů k vytisknutí zdarma</a> se nejdříve objevil na <a href="https://snilkuvsvet.cz">Snilkuvsvet.cz</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://snilkuvsvet.cz/halloweenske-pracovni-listy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://snilkuvsvet.cz/wp-content/uploads/2026/10/halloweenske-pracovni-listy-titulni.jpg" type="image/jpeg" />
	</item>
	</channel>
</rss>
