<!DOCTYPE html>
<html lang="cs">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Procvičování autoškoly</title>
    <style>
        body { font-family: Arial, sans-serif; margin: 20px; }
        .question-container { 
            width: 70%;
            margin: 20px auto;
            padding: 20px; 
            border: 1px solid #ddd; 
            border-radius: 8px; 
            background-color: #f9f9f9; 
        }
        @media (max-width: 768px) {
            .question-container {
                width: 100%;
                margin: 10px auto;
            }
            .result-container {
                width: 100%;
                padding: 15px;
            }
            .question-text, .result-title { font-size: 24px; }
            .question-image, .question-video { max-height: 200px; }
        }
        .question-header { font-size: 12px; font-weight: bold; color: #555; margin-bottom: 10px; display: flex; justify-content: space-between; }
        .question-text { font-size: 28px; font-weight: bold; margin-bottom: 15px; }
        .question-image, .question-video { 
            width: auto; 
            max-width: 100%;
            max-height: 400px;
            height: auto; 
            margin: 15px auto;
            display: block;
            border-radius: 10px;
            object-fit: contain;
        }
        .answer-option { 
            cursor: pointer; 
            padding: 10px; 
            margin-top: 10px; 
            border: 1px solid #ccc; 
            border-radius: 8px; 
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .answer-label { 
            font-weight: normal; 
            width: 30px; 
            height: 30px; 
            display: flex; 
            align-items: center; 
            justify-content: center; 
            border: 1px solid #ccc; 
            border-radius: 3px; 
            background-color: #f1f1f1;
            font-size: 16px;
            flex-shrink: 0;
            margin-left: 5px;
        }
        #nextBtn, .retryBtn { 
            margin-top: 40px;
            padding: 10px 20px;
            font-size: 16px; 
            cursor: pointer; 
            background-color: #4dc26b;
            color: #fff;
            border: none;
            border-radius: 5px;
            display: flex;
            align-items: center;
            gap: 5px;
            transition: background-color 0.3s;
            float: right;
        }
        #nextBtn:hover, .retryBtn:hover {
            background-color: #45ae60;
        }
        #prevBtn { 
            margin-top: 40px;
            padding: 0;
            font-size: 12px;
            cursor: pointer; 
            background-color: transparent;
            color: rgba(102, 102, 102, 0.8); 
            border: none;
            float: left;
            display: flex;
            align-items: center;
            height: 100%;
        }
        .correct { background-color: #d4edda; color: green; text-decoration: underline; }
        .incorrect { background-color: #f8d7da; color: red; }
        .selected { font-weight: bold; }
        .selected-temp { background-color: #d3d3d3; color: #555; }
        .result-container { margin-top: 20px; padding: 20px; border: 1px solid #ddd; border-radius: 8px; background-color: #f9f9f9; position: relative; }
        .result-title { font-size: 32px; font-weight: bold; }
        .result-box {
            border: 1px solid #ccc;
            padding: 15px;
            margin-bottom: 20px;
            border-radius: 8px;
            background-color: #f9f9f9;
        }
        .result-question {
            font-weight: bold;
            margin-bottom: 10px;
        }
        .summary-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        .summary-table th, .summary-table td { border: 1px solid #ddd; padding: 10px; text-align: center; }
        .summary-table th { background-color: #f2f2f2; font-weight: bold; }
        .retryBtn-bottom {
            margin-top: 20px;
            display: block;
            clear: both;
        }
        .success-message {
            font-size: 18px;
            color: #4dc26b;
            text-align: center;
            margin: 20px 0;
        }
        .mistake-info { font-size: 10px; color: #888; margin-top: 5px; }
        @media (max-width: 768px) {
            .question-container {
                width: 100%;
            }
            .result-box {
                padding: 10px;
            }
            .summary-table td, .summary-table th {
                padding: 5px;
                font-size: 12px;
            }
            .question-image, .question-video {
                max-height: 150px;
            }
        }
    </style>
</head>
<body>
    
    <div id="app"></div>

    <script>
        const imageUrls = {              
                       "22050030": "https://etesty2.cz/wp-content/uploads/2024/11/22050030.jpg",
    "06060320": "https://etesty2.cz/wp-content/uploads/2024/11/06060320.jpg",
    "08080020": "https://etesty2.cz/wp-content/uploads/2024/11/08080020.jpg",
    "22020016": "https://etesty2.cz/wp-content/uploads/2024/11/22020016.png",
    "06060248": "https://etesty2.cz/wp-content/uploads/2024/11/06060248.jpg",
    "06060324": "https://etesty2.cz/wp-content/uploads/2024/11/06060324.jpg",
    "06060505": "https://etesty2.cz/wp-content/uploads/2024/11/06060505.jpg",
    "22050002": "https://etesty2.cz/wp-content/uploads/2024/11/22050002.mp4",
    "22050002": "https://etesty2.cz/wp-content/uploads/2024/11/22050002.mp4",
    "10110027": "https://etesty2.cz/wp-content/uploads/2024/11/10110027.jpg",
    "10110010": "https://etesty2.cz/wp-content/uploads/2024/11/10110010.jpg",
    "10110028": "https://etesty2.cz/wp-content/uploads/2024/11/10110028.jpg",
    "21100010": "https://etesty2.cz/wp-content/uploads/2024/11/21100010.jpg",
    "22020021": "https://etesty2.cz/wp-content/uploads/2024/11/22020021.jpg",
    "240759": "https://etesty2.cz/wp-content/uploads/2024/11/240759.mp4",
"24030042": "https://etesty2.cz/wp-content/uploads/2024/11/24030042.mp4",
    "06050022": "https://etesty2.cz/wp-content/uploads/2024/11/06050022.jpg",
"24030010": "https://etesty2.cz/wp-content/uploads/2024/11/24030010.jpg",
"23060045": "https://etesty2.cz/wp-content/uploads/2024/11/23060045.png",
    "22100037": "https://etesty2.cz/wp-content/uploads/2024/11/22100037.jpg",
    "22100027": "https://etesty2.cz/wp-content/uploads/2024/11/22100027.jpg",
    "22100024": "https://etesty2.cz/wp-content/uploads/2024/11/22100024.jpg",
    "240727-1": "https://etesty2.cz/wp-content/uploads/2024/11/240727-1.jpg",
    "240727-2": "https://etesty2.cz/wp-content/uploads/2024/11/240727-2.jpg",
    "240727-3": "https://etesty2.cz/wp-content/uploads/2024/11/240727-3.jpg",
    "16010002-1": "https://etesty2.cz/wp-content/uploads/2024/11/16010002-1.jpg",
    "16010002-2": "https://etesty2.cz/wp-content/uploads/2024/11/16010002-2.jpg",
    "16010002-3": "https://etesty2.cz/wp-content/uploads/2024/11/16010002-3.jpg",
    "06050208": "https://etesty2.cz/wp-content/uploads/2024/11/06050208.jpg",
    "06050209": "https://etesty2.cz/wp-content/uploads/2024/11/06050209.jpg",
    "06050212": "https://etesty2.cz/wp-content/uploads/2024/11/06050212.jpg",
    "06060298": "https://etesty2.cz/wp-content/uploads/2024/11/06060298.jpg",
    "16010011": "https://etesty2.cz/wp-content/uploads/2024/11/16010011.jpg",
    "22020038": "https://etesty2.cz/wp-content/uploads/2024/11/22020038.jpg",
    "06060171": "https://etesty2.cz/wp-content/uploads/2024/11/06060171.jpg",
    "21100007": "https://etesty2.cz/wp-content/uploads/2024/11/21100007.jpg",
    "21100006": "https://etesty2.cz/wp-content/uploads/2024/11/21100006.jpg",
"24030022": "https://etesty2.cz/wp-content/uploads/2024/11/24030022.png",
    "22050014": "https://etesty2.cz/wp-content/uploads/2024/11/22050014.png",
   
        };

        const originalQuestions = [
         { category: "Zdravotnická příprava", question: "Při provádění zevní srdeční masáže je správné stlačení hrudní kosti asi o:", questionNumber: "11020014", points: 1, answers: ["8-10 cm", "stačí 1-2 cm", "4-5 cm u dospělého tj. na šířku dvou palců zachraňovaného"], correct: 2 },
{ category: "Zdravotnická příprava", question: "Hrozí trestní postih, pokud neposkytnete první pomoc?", questionNumber: "06060268", points: 1, answers: ["Ne, v žádném případě, je to moje vlastní vůle.", "Podle závažnosti úrazu nebo postižení poraněného.", "Ano, s možností nepodmíněného trestu odnětí svobody."], correct: 2 },
{ category: "Zdravotnická příprava", question: "Pro kvalitně prováděnou srdeční masáž je nejdůležitější", questionNumber: "11020029", points: 1, answers: ["jen frekvence.", "dostatečná hloubka stlačení hrudní kosti a frekvence.", "jen hloubka stlačení hrudní kosti."], correct: 1 },
{ category: "Zdravotnická příprava", question: "Při umělém dýchání z plic do plic u dospělého:", questionNumber: "11020009", points: 1, answers: ["vdechuji do plic poraněného jen obsah vzduchu ve svých ústech", "dýchám frekvencí alespoň 20 vdechů/min a vždy se snažím o co největší vdech", "dýchám úplně normálně frekvencí 6-8 vdechů/min, bez extrémního nádechu a vdechu do poraněného"], correct: 2 },
{ category: "Zdravotnická příprava", question: "Jak zajistíte průchodnost dýchacích cest:", questionNumber: "11020022", points: 1, answers: ["zakloním mírně hlavu a předsunu dolní čelist směrem vzhůru, event. vyčistím ústa od cizích těles (zvratků, krve..)", "chytnu jazyk poraněného a snažím se ho vytáhnout z dutiny ústní", "předkloním mu hlavu"], correct: 0 },
{ category: "Zdravotnická příprava", question: "Při poranění motorkáře, který je v bezvědomí a nedýchá:", questionNumber: "11020012", points: 1, answers: ["mohu sejmout přilbu jakýmkoli způsobem", "nikdy nesundávám přilbu", "je nejlepší vyproštění hlavy ve dvou zachráncích, kdy jeden pevně svírá hlavu poraněného a druhý opatrně sejme přilbu"], correct: 2 },
{ category: "Zdravotnická příprava", question: "Při zevní srdeční masáži", questionNumber: "13090001", points: 1, answers: ["pokud není poraněný na pevné podložce, srdeční masáž nezahájím", "vždy poraněného přesunu na pevnou podložku", "zahájím nepřímou srdeční masáž i v nevýhodné poloze (např. v sedu při zaklínění ve voze), pokud nelze poraněného rychle vyprostit"], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Průběžný pruh:", questionNumber: "10060054", points: 2, answers: ["Je jízdní pruh, který je po ukončení znovu obnoven a vyznačen na vozovce.", "Je jízdní pruh probíhající v původním směru (bez odbočení) křižovatkou nebo v místě, kde se mění počet jízdních pruhů.", "Je střední jízdní pruh tam, kde jsou na vozovce vyznačeny alespoň tři jízdní pruhy v jednom směru jízdy."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Přechod pro chodce:", questionNumber: "10060059", points: 2, answers: ["Je místo na pozemní komunikaci určené pro přecházení chodců, které vždy musí být řízeno světelnými signály.", "Je místo na vozovce určené pro přecházení chodců, které však nesmějí k přecházení vozovky užívat osoby hluchoslepé.", "Je místo na pozemní komunikaci určené pro přecházení chodců, vyznačené příslušnou dopravní značkou."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Nesmět omezit znamená povinnost počínat si tak, aby:", questionNumber: "11080008", points: 2, answers: ["jinému účastníku provozu na pozemních komunikacích nebylo nijak překáženo.", "jiný řidič mohl bezpečně zastavit vozidlo.", "druhý řidič nemusel náhle snížit rychlost jízdy nebo zastavit."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Řidič motorového vozidla musí mít při řízení u sebe:", questionNumber: "06060391", points: 2, answers: ["Osvědčení o registraci vozidla.", "Návod k ovládání a údržbě vozidla.", "Sluneční brýle nebo jiný prostředek sloužící k ochraně zraku před oslněním."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Vozidlem se pro účely provozu na pozemních komunikacích rozumí:", questionNumber: "06060467", points: 2, answers: ["Pouze autobus, trolejbus nebo tramvaj.", "Pouze nekolejové vozidlo poháněné vlastní pohonnou jednotkou.", "Každé motorové vozidlo, nemotorové vozidlo i tramvaj."], correct: 2 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Zastavit vozidlo\" znamená:", questionNumber: "10060012", points: 2, answers: ["přerušit jízdu z důvodu nezávislého na vůli řidiče.", "uvést vozidlo do klidu nad dobu povolenou pro zastavení.", "uvést vozidlo do klidu pro neprodlené nastoupení nebo vystoupení přepravovaných osob."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Silnice pro motorová vozidla\":", questionNumber: "10060015", points: 2, answers: ["je silnice označená dopravní značkou 'Rychlostní komunikace'.", "je pozemní komunikace označená dopravní značkou 'Silnice pro motorová vozidla'.", "je každá pozemní komunikace s výjimkou dálnic."], correct: 1 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Připojovací pruh\":", questionNumber: "10060020", points: 2, answers: ["je přídatný jízdní pruh určený pro zařazování vozidel do jízdního proudu průběžného pruhu.", "je jízdní pruh, připojený pro bezpečné couvání a otáčení nebo zastavení a stání.", "je jízdní pruh, připojený mezi pravý a levý jízdní pruh, určený pro předjíždění vozidel na přehledných místech pozemní komunikace."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Tramvajový pás\":", questionNumber: "10060025", points: 2, answers: ["je součástí pozemní komunikace, která je vždy označena jako hlavní pozemní komunikace.", "je část pozemní komunikace určená především pro provoz tramvají.", "je část pozemní komunikace určená pro provoz tramvají; za tramvajový pás se nepovažuje pouze jedna kolej pro oba směry jízdy."], correct: 1 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Nemotorové vozidlo\":", questionNumber: "10060034", points: 2, answers: ["Je pouze jízdní kolo nebo ruční vozík.", "Je vozidlo pohybující se pomocí lidské nebo zvířecí síly, například jízdní kolo nebo ruční vozík; s výjimkou potahového a přípojného vozidla.", "Je přípojné vozidlo a vozidlo pohybující se pomocí lidské nebo zvířecí síly, například jízdní kolo, ruční vozík nebo potahové vozidlo."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Po předjetí jiného vozidla máte v úmyslu se zařadit před toto vozidlo. Musíte dávat znamení o změně směru jízdy?", questionNumber: "06040251", points: 2, answers: ["Ano.", "Ne."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Řidič vozidla, který nehodlá nebo nemůže projet podél tramvaje vpravo:", questionNumber: "06040276", points: 2, answers: ["Musí pokračovat v jízdě za tramvají až na takové místo, kde lze podél tramvaje projet vpravo.", "Musí za ní jet v takové vzdálenosti, aby umožnil projetí podél tramvaje ostatním řidičům.", "Musí zastavit vozidlo a umožnit ostatním řidičům projetí podél tramvaje."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Řidič při vyjíždění z kruhového objezdu:", questionNumber: "06040297", points: 2, answers: ["Není povinen dát znamení o změně směru jízdy.", "Je povinen upozornit ostatní účastníky provozu o svém úmyslu výstražným světelným znamením.", "Je povinen dát znamení o změně směru jízdy vpravo."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Na silniční vegetaci, pokud to není povoleno místní úpravou na pozemní komunikaci:", questionNumber: "06040347", points: 2, answers: ["Řidič může zastavit, nikoli však stát.", "Řidič nesmí zastavit a stát.", "Řidič může zastavit na dobu nezbytně nutnou."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Je jezdec na koni, který se pohybuje po pozemní komunikaci, řidičem?", questionNumber: "06050414", points: 2, answers: ["Ano.", "Ne."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Ten, kdo způsobil překážku provozu na pozemních komunikacích:", questionNumber: "06060136", points: 2, answers: ["Oznámí to neprodleně policii, která zajistí její označení.", "Oznámí to neprodleně vlastníkovi pozemní komunikace, který překážku na vlastní náklady odstraní.", "Musí ji neprodleně odstranit; neučiní-li tak, odstraní ji na jeho náklady vlastník pozemní komunikace."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Řidič motorového vozidla, který je povinen užít přenosného výstražného trojúhelníku, jej musí umístit:", questionNumber: "06060061", points: 2, answers: ["Na okraj vozovky tak, aby byl pro přijíždějící řidiče včas a zřetelně viditelný, a to ve vzdálenosti nejméně 50 m, na dálnici nejméně 100 m za vozidlem; v obci může být tato vzdálenost, vyžadují-li to okolnosti, kratší.", "V libovolné vzdálenosti na okraj vozovky tak, aby byl pro přijíždějící řidiče včas a zřetelně viditelný.", "Na krajnici vozovky ve vzdálenosti nejméně 80 m, na dálnici a silnici I. třídy nejméně 130 m za vozidlem."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Motorové vozidlo\":", questionNumber: "10060039", points: 2, answers: ["je vozidlo poháněné vlastní pohonnou jednotkou, ne však trolejbus.", "je vozidlo poháněné vlastní pohonnou jednotkou a tramvaj.", "je nekolejové vozidlo poháněné vlastní pohonnou jednotkou a trolejbus."], correct: 2 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Nemotorové vozidlo\" je:", questionNumber: "10060029", points: 2, answers: ["Pouze přípojné a potahové vozidlo.", "Přípojné vozidlo a vozidlo pohybující se pomocí lidské nebo zvířecí síly, například jízdní kolo, ruční vozík nebo potahové vozidlo.", "Pouze ruční vozík nebo jízdní kolo."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Chodci v pěší zóně:", questionNumber: "06050599", points: 2, answers: ["Nemusí při užívání pěší zóny brát ohled na pohyb vozidel.", "Musí umožnit jízdu pouze vozidlům s právem přednostní jízdy.", "Musí umožnit jízdu všem vozidlům."], correct: 2 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Předjíždí se:", questionNumber: "06060385", points: 2, answers: ["Vpravo nebo vlevo, podle toho, kde je v dané situaci více prostoru pro bezpečné předjetí.", "Vlevo; vpravo se předjíždí vozidlo, které mění směr jízdy vlevo a není-li již pochybnosti o dalším směru jeho jízdy.", "Vlevo, a to bez výjimky."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Tramvaj zastavila v zastávce bez nástupního ostrůvku. Řidič jiného vozidla jedoucího za touto tramvají musí:", questionNumber: "06060099", points: 2, answers: ["Zastavit vozidlo. Pokračovat v jízdě smí teprve tehdy, neohrozí-li již cestující, kteří nastupují nebo vystupují.", "Zastavit vozidlo na dobu, než tramvaj odjede z prostoru zastávky.", "Tramvaj se zvýšenou opatrností objet vlevo; přitom musí svou jízdu přizpůsobit zejména možnosti vstoupení chodců do vozovky."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Na silnici pro motorová vozidla je vlečení motorového vozidla dovoleno jen tehdy:", questionNumber: "06060377", points: 2, answers: ["Jestliže je to nutné k jeho odstranění z dálnice nebo ze silnice pro motorová vozidla; vozidlo smí být vlečeno jen k nejbližšímu výjezdu, kde musí dálnici nebo silnici pro motorová vozidla opustit.", "Jestliže maximální přípustná hmotnost vlečeného vozidla nepřevyšuje 3.500 kg.", "Je-li možno při jízdě po rovině dosáhnout rychlosti nejméně 80 km/h."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Smí řidič vozidla z výhledu vjet na železniční přejezd?", questionNumber: "22050030", points: 2, answers: ["Ne.", "Ano, situace je dostatečně přehledná a závory jsou zvednuty."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Pokud přijíždíte na tuto křižovatku, musíte dát přednost v jízdě všem vozidlům přijíždějícím:", questionNumber: "06060320", points: 2, answers: ["Jen zprava.", "Jen zleva.", "Zprava i zleva."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Při přepravě sypkých substrátů, například písku, musí být:", questionNumber: "06060157", points: 2, answers: ["Vozidlo vybaveno zvláštním výstražným světlem oranžové barvy, které musí být při jízdě zapnuté.", "Vozidlo viditelně označeno zvláštním označením vozidla přepravujícího sypké substráty.", "Náklad zajištěn tak, aby nedocházelo k jeho samovolnému odlétávání, například plachtou."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Může řidič motorového vozidla předjíždět bezprostředně před přechodem pro chodce, pokud dává znamení o změně směru jízdy?", questionNumber: "06050362", points: 2, answers: ["Ne.", "Ano."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Řidiči motorových vozidel mohou vjet do vyznačeného středního pruhu pozemní komunikace:", questionNumber: "08080020", points: 2, answers: ["Pouze tehdy, pokud je to nutné k objíždění, odbočování nebo vjíždění na pozemní komunikaci.", "Při předjíždění pomaleji jedoucích motorových vozidel, ale musí dávat včas znamení o změně směru jízdy.", "Kdykoliv, pokud tramvaj neomezí v jízdě nebo jej užít k předjíždění tramvaje, která stojí v zastávce."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Při přepravě živých zvířat:", questionNumber: "06060177", points: 2, answers: ["Musí být vozidlo vybaveno zvláštními výstražnými světly oranžové barvy.", "Musí být u vozidel i za nesnížené viditelnosti rozsvícena jen potkávací světla.", "Nesmí být ohrožena bezpečnost řidiče, přepravovaných osob ani zvířat a ani bezpečnost provozu na pozemních komunikacích."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Průběžný pruh:", questionNumber: "10060055", points: 2, answers: ["Je jízdní pruh probíhající obcí od jejího začátku až do ukončení dopravní značkou 'Konec obce'.", "Je jízdní pruh probíhající v původním směru (bez odbočení) křižovatkou nebo v místě, kde se mění počet jízdních pruhů.", "Je jízdní pruh označený svislou dopravní značkou 'Okruh' nebo 'Změna směru okruhu'."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Před železničním přejezdem, u kterého je umístěna dopravní značka „Stůj, dej přednost v jízdě!“, musí řidič zastavit vozidlo:", questionNumber: "06040342", points: 2, answers: ["Na takovém místě, odkud má náležitý rozhled na trať.", "Nejméně 5 m před železničním přejezdem.", "Nejdále 5 m za touto dopravní značkou."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "V obytné zóně smí řidič jet rychlostí:", questionNumber: "06050597", points: 2, answers: ["Nejvýše 20 km/h.", "Nejvýše 50 km/h.", "Nejvýše 30 km/h."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Svítí-li zvláštní výstražné světlo modré nebo modré a červené barvy na stojícím vozidle:", questionNumber: "06060194", points: 2, answers: ["Musí řidiči ostatních vozidel podle okolností snížit rychlost jízdy a popřípadě i zastavit vozidlo.", "Musí řidiči ostatních vozidel vždy zastavit vozidlo.", "Musí ostatní řidiči zastavit vozidlo na krajnici."], correct: 0 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Křižovatka\":", questionNumber: "10060022", points: 2, answers: ["je místo, v němž se protínají nebo spojují nejvýše tři pozemní komunikace; za křižovatku se považuje i vyústění polní nebo lesní cesty.", "je místo, v němž se protínají pozemní komunikace; za křižovatku se nepovažuje místo, kde se pozemní komunikace spojují.", "je místo, v němž se pozemní komunikace protínají nebo spojují; za křižovatku se nepovažuje vyústění polní nebo lesní cesty nebo jiné účelové komunikace na jinou pozemní komunikaci."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Při jízdě v obytné zóně:", questionNumber: "06050603", points: 2, answers: ["Platí pro řidiče ve vztahu k chodcům stejná ustanovení jako na kterékoli jiné pozemní komunikaci.", "Musí řidič dbát zvýšené ohleduplnosti vůči chodcům, které nesmí ohrozit, a v případě nutnosti musí zastavit vozidlo.", "Musí řidič dbát zvýšené ohleduplnosti vůči chodcům, které nesmí ohrozit ani omezit."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Řidič nesmí požít alkoholický nápoj:", questionNumber: "06060193", points: 2, answers: ["Ještě hodinu po skončení jízdy.", "Bezprostředně po skončení jízdy.", "Během jízdy."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Motorové vozidlo musí mít za jízdy:", questionNumber: "06060188", points: 2, answers: ["Vždy rozsvícena všechna světla.", "Zavřena boční okna.", "Rozsvícena obrysová světla a potkávací světla nebo světla pro denní svícení, pokud je jimi vybaveno podle zvláštního právního předpisu."], correct: 2 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "\"Motorové vozidlo\":", questionNumber: "10060038", points: 2, answers: ["je pouze vozidlo poháněné vlastním motorem.", "je vozidlo poháněné vlastní pohonnou jednotkou, tramvaj a trolejbus.", "je nekolejové vozidlo poháněné vlastní pohonnou jednotkou a trolejbus."], correct: 2 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Před odbočováním vlevo se musí řidič zařadit:", questionNumber: "06060224", points: 2, answers: ["Co nejdále vlevo v části vozovky určené pro jeho směr jízdy s ohledem na rozměry vozidla nebo nákladu a šířku vozovky.", "Do levého jízdního pruhu ve vzdálenosti 500 m před místem, kde hodlá odbočovat.", "Vždy do středu vozovky bez ohledu na protijedoucí vozidla."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Kdo způsobil překážku provozu na pozemních komunikacích:", questionNumber: "06060203", points: 2, answers: ["Musí ji odstranit nejpozději do 24 hodin, a neučiní-li tak, odstraní ji správce komunikace na svůj vlastní náklad.", "Musí ji neprodleně odstranit, a neučiní-li tak, odstraní ji na jeho náklad vlastník pozemní komunikace.", "Není povinen ji odstranit, překážku je vždy povinen odstranit správce komunikace na svůj vlastní náklad."], correct: 1 },
  { category: "Pravidla provozu na pozemních komunikacích", question: "Do skupiny tvořené vozidly s právem přednostní jízdy a vozidly jimi doprovázenými se řidiči ostatních vozidel:", questionNumber: "06060347", points: 2, answers: ["Smějí zařazovat jen se zvýšenou opatrností.", "Smějí zařazovat jen za nesnížené viditelnosti.", "Nesmějí zařazovat."], correct: 2 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "V obytné a pěší zóně je stání dovoleno:", questionNumber: "06060172", points: 2, answers: ["Jen na krajnici nebo na chodníku, i když tato místa nejsou označena jako parkoviště.", "Jen na místech označených jako parkoviště.", "Kdekoliv, s výjimkou míst označených dopravní značkou „Zákaz zastavení“ nebo „Zákaz stání“."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "V obytné a pěší zóně je stání dovoleno:", questionNumber: "06060172", points: 2, answers: ["Jen na krajnici nebo na chodníku, i když tato místa nejsou označena jako parkoviště.", "Jen na místech označených jako parkoviště.", "Kdekoliv, s výjimkou míst označených dopravní značkou „Zákaz zastavení“ nebo „Zákaz stání“."], correct: 1 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Řidič jedoucí po dálnici, v úseku který prochází obcí, může jet rychlostí nejvýše:", questionNumber: "22020016", points: 2, answers: ["80 km/h.", "50 km/h.", "130 km/h."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Smí osoba pohybující se pomocí ručního nebo motorového vozíku pro invalidy užít k jízdě chodník?", questionNumber: "23060034", points: 2, answers: ["Ano, jen neohrozí-li ostatní chodce.", "Ano. Pouze v obytné nebo pěší zóně.", "Ne."], correct: 0 },
{ category: "Pravidla provozu na pozemních komunikacích", question: "Při použití sněhových řetězů na vozidle smí jet řidič:", questionNumber: "06060104", points: 2, answers: ["Rychlostí nejvýše 80 km/h.", "Rychlostí nejvýše 30 km/h.", "Rychlostí nejvýše 50 km/h"], correct: 1 },
{ category: "Dopravní situace", question: "Vyobrazený železniční přejezd se nachází na pozemní komunikaci mimo obec. Jakou nejvyšší rychlostí smíte jet ve vzdálenosti 50 metrů před tímto přejezdem?", questionNumber: "06060248", points: 4, answers: ["Nejvýše 50 km/h.", "Nejvýše 70 km/h.", "Nejvýše 90 km/h."], correct: 0 },
{ category: "Dopravní situace", question: "Na křižovatce nevyplývá přednost v jízdě z dopravních značek. V jakém pořadí projedou řidiči křižovatkou?", questionNumber: "06060324", points: 4, answers: ["Červené vozidlo má přednost v jízdě před modrým.", "Modré vozidlo má přednost v jízdě před červeným.", "Jako první projede křižovatkou rychleji jedoucí vozidlo."], correct: 1 },
{ category: "Dopravní situace", question: "Jste řidičem vozidla z výhledu. Na vyobrazené křižovatce:", questionNumber: "06060505", points: 4, answers: ["Musíte dát přednost v jízdě protijedoucímu červenému vozidlu. Následně projedete před zeleným nákladním automobilem, který Vám musí dát přenost v jízdě.", "Musíte dát přednost v jízdě oběma přijíždějícím vozidlům. Jako první projede křižovatkou protijedoucí červený automobil.", "Projedete křižovatkou současně s protijedoucím červeným vozidlem, před zeleným nákladním automobilem, který Vám musí dát přednost v jízdě."], correct: 1 },
{ category: "Dopravní situace", question: "Řidič motorového vozidla z výhledu v dopravní situaci:", questionNumber: "22020002", points: 4, answers: ["Mohl odbočit vpravo, přičemž nesměl ohrozit a omezit vozidla jedoucí ve vyhrazeném jízdním pruhu.", "Mohl odbočit vpravo bez ohledu na vozidla jedoucí ve vyhrazeném jízdním pruhu, která nesměla ohrozit a omezit vozidla odbočující z průběžného pruhu.", "Porušil pravidla silničního provozu tím, že odbočil přes vyhrazený jízdní pruh."], correct: 0 },
{ category: "Dopravní situace", question: "Ve vyobrazené dopravní situaci:", questionNumber: "22050002", points: 4, answers: ["Nesmí cyklista vyjet z jízdního pruhu pro cyklisty z důvodu vyhýbání se překážce a musí jet takovou rychlostí, aby před ní stačil zastavit.", "Cyklista porušil pravidla silničního provozu, protože nedodržel minimální bezpečný boční odstup 1,5 m od zaparkovaných vozidel.", "By měli řidič vozidla z výhledu i cyklista předvídat možnost otevření dveří do vozovky vzhledem k vystupující osobě z vozidla na chodník."], correct: 2 },
{ category: "Dopravní situace", question: "Jako poslední projede křižovatkou:", questionNumber: "10110027", points: 4, answers: ["Vozidlo z výhledu.", "Modré nákladní vozidlo.", "Žluté vozidlo."], correct: 2 },
{ category: "Dopravní situace", question: "Řidič vozidla z výhledu:", questionNumber: "10110010", points: 4, answers: ["Projede křižovatkou jako poslední.", "Projede křižovatkou jako první.", "Dává přednost v jízdě tramvaji č. 1."], correct: 1 },
{ category: "Dopravní situace", question: "Vozidlo z výhledu projede křižovatkou:", questionNumber: "10110028", points: 4, answers: ["Jako druhé.", "Jako první.", "Jako poslední."], correct: 0 },
{ category: "Dopravní situace", question: "Na uvedené křižovatce řidič vozidla z výhledu:", questionNumber: "21100010", points: 4, answers: ["Nemusí se při odbočení vpravo řídit světelnými signály, neboť těmto je nadřazena přenosná svislá dopravní značka „Práce na silnici“, která informuje o poruše světelných signálů.", "Smí odbočit vpravo, přitom musí dát přednost v jízdě vozidlům a jezdcům na zvířatech jedoucím ve volném směru a útvarům chodců jdoucím ve volném směru.", "Je doplňkovou zelenou šipkou informován o přednosti v jízdě vozidel přijíždějících zprava."], correct: 1 },
{ category: "Dopravní situace", question: "Řidič vozidla z výhledu hodlá odbočit vlevo. V jakém pořadí projedou vozidla touto křižovatkou?", questionNumber: "22020021", points: 4, answers: ["Jako první projede tramvaj, následně vozidlo z výhledu.", "Jako první projede vozidlo z výhledu, následně tramvaj.", "Tramvaj i vozidlo z výhledu projedou současně."], correct: 0 },
{ category: "Dopravní situace", question: "Řidič zeleného vozidla v dané dopravní situaci:", questionNumber: "240759", points: 4, answers: ["Může odbočit pouze v případě, že odbočuje do místa vyznačeného červenými směrovými sloupky.", "Nesmí v tomto místě odbočit vlevo.", "Může odbočit vlevo, nesmí však ohrozit řidiče protijedoucího vozidla."], correct: 1 },
{ category: "Dopravní situace", question: "K jakému porušení silničních pravidel ve vyobrazené dopravní situaci došlo?", questionNumber: "24030042", points: 4, answers: ["Řidič autobusu nedal přednost v jízdě řidiči vozidla z výhledu, který vjížděl na kruhový objezd.", "Řidič modrého vozidla, které vjíždělo na kruhový objezd, nedal přednost v jízdě řidiči vozidla z výhledu, který jel po kruhovém objezdu.", "Řidič vozidla z výhledu nesměl zastavit před přechodem pro chodce při výjezdu z kruhového objezdu."], correct: 1 },
{ category: "Dopravní situace", question: "Jste řidičem vozidla z výhledu. Na vyobrazené křižovatce:", questionNumber: "06050022", points: 4, answers: ["Musíte dát přednost v jízdě žlutému vozidlu, které přijíždí po hlavní pozemní komunikaci. Řidič zeleného vozidla musí dát přednost v jízdě vám.", "Máte přednost v jízdě před zeleným i žlutým vozidlem. Jako druhé projede křižovatkou žluté vozidlo a jako poslední zelené vozidlo.", "Musíte dát přednost v jízdě žlutému vozidlu, protože je na hlavní pozemní komunikaci, i zelenému vozidlu, protože odbočujete vlevo."], correct: 2 },
    { category: "Zásady bezpečné jízdy", question: "Který z uvedených sdělovačů informuje řidiče motorového vozidla o rozsvícených potkávacích světlech?", questionNumber: "24030010", points: 2, answers: ["A", "B", "C"], correct: 0 },
    { category: "Zásady bezpečné jízdy", question: "Správný tlak huštění pneumatik se zjišťuje:", questionNumber: "06060278", points: 2, answers: ["Na jízdou zahřátých pneumatikách.", "Na pneumatikách bez ohledu na jejich teplotu.", "Na studených, jízdou nezahřátých pneumatikách."], correct: 2 },
    { category: "Zásady bezpečné jízdy", question: "Ve výhledu z motorového vozidla vidíte skupinu dětí na chodníku. Jak se zachováte?", questionNumber: "06060279", points: 2, answers: ["S ohledem na možné vběhnutí dětí do vozovky snížíte rychlost jízdy a zvýšíte pozornost.", "Použijete zvukové výstražné znamení a přejedete k levému okraji jízdního pruhu.", "Protože jsou děti na chodníku, nemáte důvod ke zvýšení opatrnosti ani ke změně způsobu jízdy."], correct: 0 },
    { category: "Zásady bezpečné jízdy", question: "Co může vést ke smyku vozidla při průjezdu zatáčkami?", questionNumber: "06060424", points: 2, answers: ["Jízda při středové dělicí čáře.", "Nízký tlak v pneumatikách.", "Nedostatečná rychlost jízdy."], correct: 1 },
    { category: "Zásady bezpečné jízdy", question: "Přetáčivý smyk u vozidla s pohonem předních kol budete řešit:", questionNumber: "06060462", points: 2, answers: ["Sešlápnutím spojkového pedálu a natočením volantu směrem, kterým se pohybuje zadní část vozidla.", "Citlivým sešlápnutím pedálu akcelerátoru a natočením volantu směrem, kterým se pohybuje zadní část vozidla.", "Sešlápnutím brzdového pedálu a natočením volantu směrem, kterým se pohybuje zadní část vozidla."], correct: 1 },
    { category: "Zásady bezpečné jízdy", question: "Může řidič číst za jízdy z mapy?", questionNumber: "06060463", points: 2, answers: ["Ne, zvyšuje se tím riziko dopravní nehody. Řidič se musí věnovat řízení vozidla.", "Ano, s výjimkou jízdy na dálnici.", "Ano, ale pouze při rychlosti nižší než je 50 km/h."], correct: 0 },
    { category: "Zásady bezpečné jízdy", question: "Co se rozumí pod pojmem „defenzivní způsob jízdy“?", questionNumber: "06060483", points: 2, answers: ["Počítat s chybami ostatních účastníků provozu na pozemních komunikacích.", "Opatrně zastavit na každé křižovatce.", "Trvat na svém právu vyplývajícím ze zákona o provozu na pozemních komunikacích."], correct: 0 },
    { category: "Zásady bezpečné jízdy", question: "Protiblokovací brzdový systém (ABS):", questionNumber: "11040008", points: 2, answers: ["nemění brzdnou dráhu, zvyšuje pouze ovladatelnost vozidla při brždění.", "zajišťuje ovladatelnost vozidla při brždění.", "vždy zkracuje brzdnou dráhu vozidla."], correct: 1 },
{ category: "Zásady bezpečné jízdy", question: "Jak může řidič snížit riziko střetu s projíždějícím cyklistou při vystupovaní z vozidla?", questionNumber: "23060045", points: 2, answers: ["Řidič vozidla využívá tzv. holandského manévru, kdy dveře otevře pravou (vzdálenější) rukou, která ho přinutí natočit tělo. Tímto způsobem lépe zkontroluje zpětné zrcátko a přes levé rameno se ohlédne vzad ještě před úplným otevřením dveří.", "Řidič vozidla nemá povinnost, aby v dané situaci přemýšlel za ostatní účastníky provozu. Cyklista musí předvídat a rychlost jízdy přizpůsobit situaci, aby nedošlo ke kolizi.", "Řidič vozidla se musí důkladně podívat do zpětného zrcátka na čelním skle a následně se ohlédne přes pravé rameno, aby celou situaci zkontroloval ve skle zadních dveří. Současně levou rukou otevírá dveře, aby projíždějícím cyklistům dal signál, že hodlá vystupovat."], correct: 0 },
    { category: "Zásady bezpečné jízdy", question: "Systém ESC (ESP):", questionNumber: "22100037", points: 2, answers: ["Udržuje vozidlo v jízdních pruzích.", "Systém který pomáhá stabilizovat vozidlo při začínajícím smyku.", "Zajišťuje vyšší brzdný účinek automobilu."], correct: 1 },
    { category: "Zásady bezpečné jízdy", question: "Při jízdě na motocyklu za mokra se povrch vodorovného značení přechodů pro chodce nebo jízdních pruhů:", questionNumber: "06060239", points: 2, answers: ["Stává špatně viditelným a je proto nutné vždy používat obrysová a potkávací světla namísto světel pro denní svícení.", "Nijak neliší od povrchu tohoto značení za sucha, je stejně viditelný a má i stejné adhezní vlastnosti.", "Stává výrazně kluzkým, takže není vhodné na něm provádět žádný prudký manévr, jako je akcelerace, brzdění, náklon nebo náhlá změna směru jízdy."], correct: 2 },
    { category: "Zásady bezpečné jízdy", question: "Je velmi horký den. Co můžete jako řidič motocyklu očekávat na silnici?", questionNumber: "06060464", points: 2, answers: ["Snížení přilnavosti pneumatik k vozovce vzhledem k jejich vyššímu zahřívání.", "Rozměklý povrch vozovky a v důsledku toho ztížené ovládání vozidla.", "Zvýšený pohyb zvěře v lesních úsecích."], correct: 1 },
    { category: "Zásady bezpečné jízdy", question: "Nedodržení bezpečné vzdálenosti za vpředu jedoucím vozidlem je v ČR:", questionNumber: "22100027", points: 2, answers: ["jedním z faktorů, který nemá na bezpečnost silničního provozu významný vliv.", "jednou z nejméně častých příčin vzniku dopravních nehod.", "jednou z nejčastějších příčin vzniku dopravních nehod."], correct: 2 },
    { category: "Zásady bezpečné jízdy", question: "Může ovlivnit používání nevhodného obutí za jízdy reakční dobu řidiče nutnou k řešení situací v provozu na pozemních komunikacích?", questionNumber: "22100024", points: 2, answers: ["Ne. Obuv nemá žádný vliv na řízení vozidla.", "Ano. Je vhodné používat k řízení obuv nelimitující řidiče při ovládání vozidla. Zejména při krizovém brždění.", "Ne. Zejména v letním období je vhodné používat otevřenou obuv."], correct: 1 },
    { category: "Předpisy související s provozem", question: "Pojištění odpovědnosti z provozu vozidla se vztahuje:", questionNumber: "06050342", points: 2, answers: ["Na škodu způsobenou pouze provozovatelem tohoto vozidla a jeho rodinnými příslušníky.", "Na škodu způsobenou výlučně provozovatelem tohoto vozidla.", "Na každou osobu, která odpovídá za škodu způsobenou provozem vozidla uvedeného v pojistné smlouvě."], correct: 2 },
    { category: "Předpisy související s provozem", question: "Řidičský průkaz:", questionNumber: "06050601", points: 2, answers: ["Smí být odebírán při vstupu do objektů nebo na pozemky, ale nesmí být ponecháván ani přijímán jako zástava.", "Smí být ponecháván a přijímán jako zástava, ale nesmí být odebírán při vstupu do objektů nebo na pozemky.", "Nesmí být ponecháván a přijímán jako zástava a odebírán při vstupu do objektů nebo na pozemky."], correct: 2 },
    { category: "Předpisy související s provozem", question: "Řidičský průkaz je neplatný, jestliže:", questionNumber: "06060012", points: 2, answers: ["Uplynula doba jeho platnosti.", "Byl řidiči pro porušení zákona zadržen policistou.", "Byl jeho držiteli vystaven mezinárodní řidičský průkaz."], correct: 0 },
    { category: "Předpisy související s provozem", question: "Zelená karta:", questionNumber: "11050001", points: 2, answers: ["Je mezinárodní osvědčení prokazující skutečnost, že k vozidlu byla uzavřena smlouva o pojištění odpovědnosti za škodu způsobenou provozem vozidla uvedeného v tomto osvědčení.", "osvědčuje zaplacení ekologického poplatku.", "je doklad o kontrole měření emisí."], correct: 0 },
    { category: "Předpisy související s provozem", question: "Řidičský průkaz:", questionNumber: "06050601", points: 2, answers: ["Smí být odebírán při vstupu do objektů nebo na pozemky, ale nesmí být ponecháván ani přijímán jako zástava.", "Smí být ponecháván a přijímán jako zástava, ale nesmí být odebírán při vstupu do objektů nebo na pozemky.", "Nesmí být ponecháván a přijímán jako zástava a odebírán při vstupu do objektů nebo na pozemky."], correct: 2 },
    { category: "Předpisy související s provozem", question: "Příslušný obecní úřad obce s rozšířenou působností vydá držiteli řidičského oprávnění bezodkladně po ohlášení ztráty řidičského průkazu:", questionNumber: "06060024", points: 2, answers: ["Mezinárodní řidičský průkaz.", "Duplikát řidičského průkazu.", "Potvrzení o oznámení ztráty, odcizení, poškození nebo zničení řidičského průkazu."], correct: 2 },
    { category: "Předpisy související s provozem", question: "Závadou ve sjízdnosti silnice se rozumí taková změna v její sjízdnosti, kterou:", questionNumber: "06060493", points: 2, answers: ["Nemůže řidič vozidla předvídat při pohybu vozidla přizpůsobeném stavebnímu stavu a dopravně technickému stavu silnice a povětrnostním situacím a jejich důsledkům.", "Mohl řidič při náležité obezřetnosti předvídat.", "Vyvolal uježděný sníh ležící na vozovce."], correct: 0 },
{ category: "Dopravní značky", question: "Která z vyobrazených dopravních značek zakazuje zastavení?", questionNumber: "240727", points: 1, answers: ["240727-1", "240727-3", "240727-2"], correct: 1 },
{ category: "Dopravní značky", question: "Tato dopravní značka:", questionNumber: "06050208", points: 1, answers: ["Vyznačuje skutečný tvar hlavní pozemní komunikace.", "Označuje zejména nebezpečnou zatáčku a usměrňuje provoz ve směru šipky.", "Upozorňuje řidiče na zatáčku (směrový oblouk) vpravo, jehož bezpečné projetí vyžaduje výrazné snížení rychlosti jízdy."], correct: 2 },
{ category: "Dopravní značky", question: "Tato dopravní značka:", questionNumber: "06050209", points: 1, answers: ["Upozorňuje na vjezd do tunelu, kde kromě obecných pravidel provozu na pozemních komunikacích platí zvláštní pravidla pro provoz v tunelu.", "Upozorňuje na místo, hromadné dopravní nehody.", "Upozorňuje na nebezpečí výskytu mlhy nebo kouře."], correct: 2 },
{ category: "Dopravní značky", question: "Tato dopravní značka:", questionNumber: "06050212", points: 1, answers: ["Vyznačuje pruh nebo stezku pro cyklisty.", "Označuje místo určené pro cyklisty čekající na světelný signál „Volno“.", "Upozorňuje na místo, kde cyklisté vjíždějí na vozovku nebo ji přejíždějí, anebo na úsek, kde se cyklisté často vyskytují."], correct: 2 },
{ category: "Dopravní značky", question: "V úseku za touto dopravní značkou:", questionNumber: "06060298", points: 1, answers: ["Smí řidič stát jen na místech označených jako parkoviště; zastavit však smí i mimo parkoviště.", "Smí řidič zastavit a stát jen na místech označených jako parkoviště.", "Není zastavení, stání ani parkování právní úpravou omezeno."], correct: 0 },
{ category: "Dopravní značky", question: "Jestliže je vyobrazená dopravní značka umístěna na pozemní komunikaci u křižovatky a není doplněna vodorovnou příčnou čárou souvislou s nápisem \"STOP\":", questionNumber: "16010011", points: 1, answers: ["Má řidič povinnost zastavit vozidlo na hranici křižovatky a dát přednost v jízdě.", "Má řidič povinnost zastavit vozidlo před touto dopravní značkou a dát přednost v jízdě.", "Má řidič povinnost zastavit vozidlo na takovém místě, odkud má do křižovatky náležitý rozhled, a dát přednost v jízdě."], correct: 2 },
{ category: "Dopravní značky", question: "Platnost přenosné dopravní značky 'Nejvyšší dovolená rychlost' umístěná na vozidle, které označuje pohyblivé pracoviště tvořené pomalu se pohybujícím vozidlem nebo skupinou vozidel, končí:", questionNumber: "22020038", points: 1, answers: ["100 m ve směru jízdy za tímto vozidlem nebo za posledním vozidlem skupiny, jedná-li se o skupinu vozidel.", "300 m ve směru jízdy za tímto vozidlem nebo za posledním vozidlem skupiny, jedná-li se o skupinu vozidel.", "pouze svislou přenosnou dopravní značkou Konec nejvyšší dovolené rychlosti, nebo Konec všech zákazů nebo křižovatkou."], correct: 0 },
{ category: "Dopravní značky", question: "V úseku pozemní komunikace označeném touto dopravní značkou:", questionNumber: "06060171", points: 1, answers: ["Je řidiči nákladního automobilu o nejvyšší povolené hmotnosti převyšující 3500 kg zakázáno předjíždět motorové vozidlo vlevo.", "Je řidiči zakázáno předjíždět motorové i nemotorové vozidlo vlevo.", "Je řidiči zakázáno předjíždět motorové vozidlo vlevo s výjimkou motocyklů bez postranního vozíku."], correct: 2 },
{ category: "Dopravní značky", question: "Toto označení:", questionNumber: "21100007", points: 1, answers: ["upozorňuje na povinnost označit vozidlo výstražným trojúhelníkem", "označuje prostor určený pro odkládání zavazadel ve vozidle hromadné dopravy", "informuje účastníky provozu o řízení vozidla méně zkušeným řidičem"], correct: 2 },
{ category: "Dopravní značky", question: "Tato dopravní značka označuje:", questionNumber: "21100006", points: 1, answers: ["parkoviště na kruhovém objezdu", "placené parkoviště s parkovacím automatem na mince", "parkoviště, na kterém řidič musí ve vozidle viditelně umístit kotouč s nastavením začátku stání"], correct: 2 },
{ category: "Dopravní značky", question: "Která značka upozorňuje na práci na pozemní komunikaci nebo v jejím bezprostředním okolí, která by mohla ohrozit bezpečnost provozu na pozemních komunikacích nebo při níž by mohli být provozem ohroženi pracovníci tuto činnost vykonávající?", questionNumber: "16010002", points: 1, answers: ["16010002-1", "16010002-2", "16010002-3"], correct: 1 },
{ category: "Dopravní značky", question: "Tato dopravní značka označuje oblast:", questionNumber: "24030022", points: 1, answers: ["Kde platí pravidla silničního provozu pro provoz v pěší zóně.", "Kde platí pravidla silničního provozu pro provoz ve sdílené zóně.", "Kde platí pravidla silničního provozu pro provoz v obytné zóně."], correct: 1 },
{ category: "Dopravní značky", question: "Speciální označení osoby nevidomé je:", questionNumber: "22050014", points: 1, answers: ["Bílá hůl, která musí být opatřena nejméně jedním reflexním bílým pruhem šířky 50 mm.", "Hůl s bílými a červenými pruhy o šířce 100 mm, která musí být opatřena nejméně jedním reflexním bílým pruhem šířky 50 mm a nejméně souvislá třetina její délky musí mít průměr nejméně 12 mm.", "Hůl s černými a žlutými pruhy o šířce 100 mm, která musí být opatřena nejméně jedním reflexním bílým pruhem šířky 50 mm."], correct: 0 },
    { category: "Předpisy související s provozem", question: "Pojištění odpovědnosti z provozu vozidla se vztahuje na:", questionNumber: "06040230", points: 2, answers: ["Vlastníka vozidla, který odpovídá za škodu způsobenou provozem vozidla. Na ostatní uživatele vozidla se toto pojištění nevztahuje.", "Vlastníka vozidla při účasti na organizovaném motoristickém závodu, kde řidič není povinen dodržovat pravidla o provozu na pozemních komunikacích.", "Každou osobu, která odpovídá za škodu způsobenou provozem vozidla uvedeného v pojistné smlouvě."], correct: 2 },
  { category: "Předpisy o podmínkách provozu vozidel", question: "Tabulku registrační značky umístí vlastník nebo provozovatel vozidla:", questionNumber: "06060513", points: 1, answers: ["Na kteréhokoliv místo na přídi nebo zádi vozidla; přitom však nesmí zakrýt předepsané osvětlení vozidla.", "Na kterékoliv viditelné místo na vozidle.", "Do místa určeného konstrukčním řešením vozidla."], correct: 2 },
  { category: "Předpisy o podmínkách provozu vozidel", question: "Lhůta pro přistavení silničního motorového vozidla k pravidelné technické prohlídce se počítá:", questionNumber: "06060455", points: 1, answers: ["V závislosti na počtu ujetých kilometrů od poslední pravidelné technické prohlídky.", "Ode dne zaregistrování vozidla v registračním místě a dále od data pravidelné technické prohlídky, zapsaného v technickém průkazu vozidla.", "Ode dne zakoupení vozidla nebo převedení vozidla na jinou osobu."], correct: 1 },
    { category: "Předpisy související s provozem", question: "Policista může zabránit v jízdě motorovému vozidlu použitím technického prostředku (tzv. botičky) nebo odtažením vozidla, jestliže:", questionNumber: "11080001", points: 2, answers: ["vozidlo je z jakéhokoliv důvodu technicky nezpůsobilé k provozu.", "k vozidlu není uzavřeno pojištění odpovědnosti z provozu vozidla.", "vozidlo je technicky nezpůsobilé k provozu tak závažným způsobem, že bezprostředně ohrožuje ostatní účastníky provozu."], correct: 2 },
    { category: "Předpisy související s provozem", question: "Zničení řidičského průkazu je držitel řidičského oprávnění povinen:", questionNumber: "06060020", points: 2, answers: ["Neprodleně ohlásit příslušnému útvaru dopravní policie.", "Neprodleně ohlásit příslušnému útvaru obecní policie.", "Neprodleně ohlásit příslušnému obecnímu úřadu obce s rozšířenou působností."], correct: 2 },
  
        ];

        let questions = [];
        let currentQuestion = 0;
        let score = 0;
        let correctAnswers = 0;
        let mistakes = [];
        const totalPoints = 50;
        let timeLeft = 1800;
        let practiceMode = false;
        let startTime;
        let questionStartTime;

        const testStructure = {
            "Pravidla provozu na pozemních komunikacích": 10,
            "Dopravní značky": 3,
            "Zásady bezpečné jízdy": 4,
            "Dopravní situace": 3,
            "Předpisy o podmínkách provozu vozidel": 2,
            "Předpisy související s provozem": 2,
          "Zdravotnická příprava": 1
        };

        function shuffle(array) {
            for (let i = array.length - 1; i > 0; i--) {
                const j = Math.floor(Math.random() * (i + 1));
                [array[i], array[j]] = [array[j], array[i]];
            }
            return array;
        }
        function prepareQuestions() {
            questions = [];
            for (const [category, count] of Object.entries(testStructure)) {
                const categoryQuestions = originalQuestions.filter(q => q.category === category);
                questions.push(...shuffle(categoryQuestions).slice(0, count));
            }
            questions = shuffle(questions);
        }

        function loadQuestion() {
            const app = document.getElementById('app');
            app.innerHTML = '';

            if (currentQuestion >= questions.length) {
                showResults();
                return;
            }

            const q = questions[currentQuestion];
            const questionContainer = document.createElement('div');
            questionContainer.classList.add('question-container');

            const imageUrl = imageUrls[q.questionNumber];
let mediaHtml = '';
if (imageUrl) {
    if (imageUrl.endsWith('.mp4')) {
        mediaHtml = `<video src="${imageUrl}" class="question-video" controls></video>`;
    } else {
        mediaHtml = `<img src="${imageUrl}" alt="Obrázek k otázce" class="question-image">`;
    }
}

questionContainer.innerHTML = `
    <div class="question-header">
        <span>Otázka ${currentQuestion + 1} z ${questions.length}</span>
        ${!practiceMode ? `<span id="timer"></span>` : ''}
    </div>
    <div class="question-text">${q.question}</div>
    ${mediaHtml}
    ${q.answers.map((answer, index) => {
        if (answer.includes('-')) {
            const answerImageUrl = imageUrls[answer];
            if (answerImageUrl) {
                return `<div class="answer-option" onclick="selectAnswer(${index})" id="answer${index}">
                                <img src="${answerImageUrl}" alt="Odpověď ${String.fromCharCode(65 + index)}" class="question-image" style="max-width: 150px; max-height: 150px;">
                            </div>`;
                        }
                    }
                    return `<div class="answer-option" onclick="selectAnswer(${index})" id="answer${index}">
                        <span class="answer-label">${String.fromCharCode(65 + index)}</span> ${answer}
                    </div>`;
                }).join('')}
                <div class="question-info" style="clear: both; text-align: left; margin-top: 10px; font-size: 10px; color: #888;">Číslo otázky: ${q.questionNumber} | Počet bodů: ${q.points} | Kategorie: ${q.category}</div>
                <button onclick="prevQuestion()" id="prevBtn" ${currentQuestion === 0 ? 'disabled' : ''}>« Předchozí otázka</button>
                <button onclick="nextQuestion()" id="nextBtn" disabled>Další otázka »</button>
            `;

            app.appendChild(questionContainer);

            updateTimer();
            questionStartTime = new Date();
        }

        function selectAnswer(index) {
            const q = questions[currentQuestion];
            const selectedAnswer = document.getElementById(`answer${index}`);
            const nextBtn = document.getElementById('nextBtn');

            document.querySelectorAll('.answer-option').forEach(el => el.classList.remove('selected-temp'));
            selectedAnswer.classList.add('selected-temp');

            document.querySelectorAll('.answer-option').forEach(el => el.style.pointerEvents = 'auto');
            nextBtn.disabled = false;
        }

        function lockAnswer(index) {
            const q = questions[currentQuestion];
            const selectedAnswer = document.getElementById(`answer${index}`);

            if (index === q.correct) {
                selectedAnswer.classList.add("correct", "selected");
                score += q.points;
                correctAnswers++;
            } else {
                selectedAnswer.classList.add("incorrect", "selected");
                mistakes.push({ ...q, selectedAnswer: index });
            }
            document.querySelectorAll('.answer-option').forEach(el => el.style.pointerEvents = 'none');
        }

        function nextQuestion() {
            const selectedIndex = [...document.querySelectorAll('.answer-option')].findIndex(el => el.classList.contains('selected-temp'));
            if (selectedIndex >= 0) {
                lockAnswer(selectedIndex);
            }
            const questionEndTime = new Date();
            const questionTimeTaken = Math.floor((questionEndTime - questionStartTime) / 1000);
            if (!practiceMode) {
                timeLeft -= questionTimeTaken;
            }
            currentQuestion++;
 scrollToTop();
            loadQuestion();
        }

        function prevQuestion() {
            if (currentQuestion > 0) {
                currentQuestion--;
scrollToTop();
                loadQuestion();
            }
        }
function showModal() {
            const modal = document.getElementById('modalOverlay');
            modal.style.display = 'flex';
        }

        function scrollToTop() {
            window.scrollTo({ top: 0, behavior: 'smooth' });
        }

        function showResults() {
            const app = document.getElementById('app');
            const endTime = new Date();
            const timeTaken = Math.floor((endTime - startTime) / 1000);
            const minutesTaken = Math.floor(timeTaken / 60);
            const secondsTaken = timeTaken % 60;
            const timeText = `${minutesTaken} ${minutesTaken === 1 ? 'minuta' : (minutesTaken < 5 ? 'minuty' : 'minut')} a ${secondsTaken} sekund`;
            const timeLeftText = `${Math.floor(timeLeft / 60)} minut a ${timeLeft % 60} sekund`;

            if (!practiceMode) {
                const result = score >= 43 ? "PROSPĚL" : "NEPROSPĚL";
                const successRate = ((score / totalPoints) * 100).toFixed(1);
                const pointsNeeded = 43 - score;

                app.innerHTML = `
                    <div class="result-container">
                        <div class="result-title">Výsledek testu: <span style="color: ${result === "NEPROSPĚL" ? 'red' : 'green'}; font-size: 32px;"><strong>${result}</strong></span></div>
                        <div><strong>Dosaženo bodů:</strong> ${score} z ${totalPoints} (<strong>${successRate}%</strong> úspěšnost).</div>
                        <div>
  K úspěšnému absolvování testu je potřeba <strong>minimálně 43 bodů</strong>
  ${pointsNeeded > 0 ? `, chybí vám tedy <strong>${pointsNeeded} bodů</strong>.` : ''}
</div>

                        
                        <div>Níže naleznete přehled vašich chybných odpovědí – <span style="color: red;"><strong>červeně označená odpověď</strong></span> je vaše volba, <span style="color: green;"><strong>zeleně</strong></span> je správná odpověď.</div>
                    </div>
                `;
            } else if (mistakes.length === 0) {
                app.innerHTML = `
                    <div class="result-container">
                        <p class="success-message">Vedeš si skvěle! Procvičil(a) jsi všechny špatně zodpovězené otázky a tím se velmi rychle a efektivně učíš. Nyní můžeš spustit znovu ostrý test.</p>
                    </div>
<button onclick="window.location.reload();" class="retryBtn retryBtn-bottom">Spustit test znovu »</button>

                `;
                return;
            }

            if (mistakes.length > 0) {
                mistakes.forEach((mistake, index) => {
                    const imageUrl = imageUrls[mistake.questionNumber];
                    let mediaHtml = '';
                    if (imageUrl) {
                        if (imageUrl.endsWith('.mp4')) {
                            mediaHtml = `<video src="${imageUrl}" class="question-video" controls style="max-width: 300px; max-height: 200px; margin-top: 10px;"></video>`;
                        } else {
                            mediaHtml = `<img src="${imageUrl}" alt="Obrázek k otázce" class="question-image" style="max-width: 300px; max-height: 200px; margin-top: 10px;">`;
                        }
                    }

                    app.innerHTML += `
                        <div class="result-box">
                            <div class="result-question">Otázka ${index + 1}: ${mistake.question}</div>
                            ${mediaHtml}
                            <div class="summary-table">
                                ${mistake.answers.map((answer, i) => {
                                    if (answer.includes('-')) {
                                        const answerImageUrl = imageUrls[answer];
                                        if (answerImageUrl) {
                                            return `<div class="${i === mistake.correct ? 'correct' : i === mistake.selectedAnswer ? 'incorrect' : ''}">
                                                <img src="${answerImageUrl}" alt="Odpověď ${String.fromCharCode(65 + i)}" class="question-image" style="max-width: 100px; max-height: 100px;">
                                            </div>`;
                                        }
                                    }
                                    return `<div class="${i === mistake.correct ? 'correct' : i === mistake.selectedAnswer ? 'incorrect' : ''}">
                                        ${String.fromCharCode(65 + i)}: ${answer}
                                    </div>`;
                                }).join('')}
                            </div>
                            <div class="mistake-info">Číslo otázky: ${mistake.questionNumber} | Počet bodů: ${mistake.points} | Kategorie: ${mistake.category}</div>
                        </div>
                    `;
                });
                app.innerHTML += `
                    <button onclick="practiceMistakes()" class="retryBtn retryBtn-bottom">Procvičovat chybné odpovědi (${mistakes.length}) »</button>
<button onclick="window.location.reload();" class="retryBtn retryBtn-bottom">Spustit test znovu »</button>

                `;
            }
        }

        function practiceMistakes() {
            mistakes.forEach(mistake => {
                const correctAnswer = mistake.answers[mistake.correct];
                mistake.answers = shuffle(mistake.answers);
                mistake.correct = mistake.answers.indexOf(correctAnswer);
            });
            questions = [...mistakes];
            mistakes = [];
            currentQuestion = 0;
            score = 0;
            correctAnswers = 0;
            practiceMode = true;
            loadQuestion();
        }

        function resetQuiz() {
            currentQuestion = 0;
            score = 0;
            correctAnswers = 0;
            mistakes = [];
            timeLeft = 1800;
            practiceMode = false;
            prepareQuestions();
            loadQuestion();
        }

        prepareQuestions();
        loadQuestion();
    </script>
<script>
    document.addEventListener("DOMContentLoaded", function() {
        let timeLeft = 1800;
        let timerInterval;

        function startTimer() {
            if (timerInterval) return;

            function updateTimer() {
                let minutes = Math.floor(timeLeft / 60);
                let seconds = timeLeft % 60;
                if (seconds < 10) seconds = "0" + seconds;

                const timerElement = document.getElementById("timer");
                if (timerElement) timerElement.textContent = minutes + ":" + seconds;

                if (timeLeft > 0) {
                    timeLeft--;
                } else {
                    clearInterval(timerInterval);
                    const messageElement = document.getElementById("message");
                    if (messageElement) messageElement.textContent = "Čas vypršel";
                }
            }

            updateTimer();
            timerInterval = setInterval(updateTimer, 1000);
        }

        startTimer();
    });
// Funkce pro zobrazení blur efektu a pop-upu
function showBlurAndPopup() {
    // Přidání overlay pro blur efekt
    const blurOverlay = document.createElement('div');
    blurOverlay.id = 'blur-overlay';
    blurOverlay.style.position = 'fixed';
    blurOverlay.style.top = '0';
    blurOverlay.style.left = '0';
    blurOverlay.style.width = '100%';
    blurOverlay.style.height = '100%';
blurOverlay.style.background = 'rgba(0, 0, 0, 0.3)';
    blurOverlay.style.backdropFilter = 'blur(5px)';
    blurOverlay.style.filter = 'blur(5px)';
    blurOverlay.style.zIndex = '1000';

    // Vložení obsahu (otázky a odpovědi) přímo do overlay
    const blurredContent = document.createElement('div');
    blurredContent.style.position = 'fixed';
    blurredContent.style.top = '55%';
    blurredContent.style.left = '55%';
    blurredContent.style.transform = 'translate(-50%, -50%)';
    blurredContent.style.width = '60%';
    blurredContent.style.color = '#fff';
    blurredContent.style.fontSize = '16px';
    blurredContent.style.lineHeight = '1.5';
    blurredContent.style.textAlign = 'left';
    blurredContent.style.userSelect = 'none'; // Zakázání označování textu
    blurredContent.style.pointerEvents = 'none'; // Zakázání interakce s textem

    // Dynamický obsah (více otázek a odpovědí)
    blurredContent.innerHTML = `
<h1 style="font-size: 28px; margin-bottom: 20px; color: #000; text-transform: uppercase;">Vyhodnocení testu:</h1>       

<h3 style="margin-bottom: 10px; color: #666;">1. Pro zobrazení výsledku vyplňte email.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: green;">✔ Vyplňte email a zobrazte výsledek.</li>
    <li style="color: red;">✘ Výsledek bez emailu.</li>
    <li style="color: red;">✘ Zkuste bez emailu.</li>
</ul>

<h3 style="margin-bottom: 10px; color: #666;">2. Pro zobrazení výsledku vyplňte email.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: red;">✘ Email není třeba.</li>
    <li style="color: green;">✔ Výsledek po vyplnění emailu.</li>
    <li style="color: red;">✘ Bez emailu nezobrazíte výsledek.</li>
</ul>

<h3 style="margin-bottom: 10px; color: #666;">3. Email je klíčem k výsledkům.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: green;">✔ Email nutný pro zobrazení.</li>
    <li style="color: red;">✘ Bez emailu výsledky.</li>
    <li style="color: red;">✘ Pokračujte bez emailu.</li>
</ul>

<h3 style="margin-bottom: 10px; color: #666;">4. Vyplňte email pro zobrazení výsledků.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: red;">✘ Výsledek bez emailu.</li>
    <li style="color: green;">✔ Zadejte email a zobrazte výsledky.</li>
    <li style="color: red;">✘ Zobrazte výsledek bez vyplnění.</li>
</ul>

<h3 style="margin-bottom: 10px; color: #666;">5. Výsledky testu: Vyplňte email.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: green;">✔ Email nutný k výsledkům.</li>
    <li style="color: red;">✘ Výsledky bez emailu.</li>
    <li style="color: red;">✘ Zkuste bez zadání emailu.</li>
</ul>

<h3 style="margin-bottom: 10px; color: #666;">6. Pro zobrazení výsledků vyplňte email.</h3>
<ul style="margin-bottom: 20px;">
    <li style="color: red;">✘ Bez emailu zobrazte výsledky.</li>
    <li style="color: green;">✔ Vyplňte email k zobrazení výsledků.</li>
    <li style="color: red;">✘ Nepotřebujete email.</li>
</ul>
    `;

    blurOverlay.appendChild(blurredContent);
    document.body.appendChild(blurOverlay);

    // Zamezení kopírování
    document.addEventListener('copy', function (e) {
        e.preventDefault();
        alert("Text nelze kopírovat!");
    });

    // Zobrazení pop-upu okamžitě
    const popup = document.createElement('div');
    popup.id = 'popup';
    popup.style.position = 'fixed';
    popup.style.top = '50%';
    popup.style.left = '50%';
    popup.style.transform = 'translate(-50%, -50%)';
    popup.style.background = 'white';
    popup.style.borderRadius = '10px';
    popup.style.padding = '20px';
    popup.style.boxShadow = '0 4px 10px rgba(0, 0, 0, 0.25)';
    popup.style.zIndex = '1100';
    popup.style.textAlign = 'center';
    popup.style.maxWidth = '400px';
    popup.style.width = '90%';

    popup.innerHTML = `
        <h2 style="font-size: 18px; margin-bottom: 15px;">Odpověděli jste na všechny otázky (25/25). Pro zobrazení výsledků zadejte svůj e-mail:</h2>
        <form method="post" action="https://et2.ecomailapp.cz/public/subscribe/1/43c2cd496486bcc27217c3e790fb4088">
            <div class="form-group">
                <input type="email" class="form-control" name="email" required placeholder="Zadejte svůj e-mail" style="width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 5px; margin-bottom: 15px; font-size: 14px;">
            </div>
            <button type="submit" style="background: #4dc26b; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; font-size: 16px;">
                Zobrazit výsledky »
            </button>
        </form>
        <a href="https://etesty2.cz/ochrana-osobnich-udaju-3/" target="_blank" style="font-size: 12px; color: grey; text-decoration: underline; display: block; margin-top: 10px;">Zásady zpracování osobních údajů</a>
    `;

    document.body.appendChild(popup);
}

// Zavolej showBlurAndPopup na konci testu
function showResults() {
    const app = document.getElementById('app');
    app.innerHTML = ''; // Zde lze nahradit obsahem výsledků
    showBlurAndPopup();
}

</script>

<style>
    #timer {
        opacity: 0.25;
        font-size: 12px;
        font-weight: bold;
    }
</style>

</body>
</html>