Vytvoř mi jednoduchou offline kalkulačku ceny zakázky jako jeden soubor kalkulacka.html s vloženým CSS a JavaScriptem. Má se otevírat dvojklikem v prohlížeči přes file://, bez serveru, účtu, API, CDN, externích písem, analytiky a síťových požadavků. Při používání nesmí potřebovat AI. Nevytvářej framework ani další funkce.

Rozhraní česky, měna EUR, všechny částky bez DPH. Čitelný světlý vzhled, systémové písmo, viditelný fokus a ovládání klávesnicí. Vstupy: materiál a ostatní přímé náklady, hodiny práce, interní nákladová hodinová sazba, požadovaná marže v procentech. Vysvětli, že nákladová sazba není prodejní sazba a marže není přirážka.

Náklady N = materiál + hodiny × nákladová sazba. Doporučená prodejní cena P = N / (1 − marže / 100). Částka nad zadanými náklady R = P − N. R nikdy neoznačuj jako čistý zisk. Nezadaná režie, daně a další náklady nejsou zahrnuté.

Přidej tlačítka na načtení smyšleného příkladu, vymazání vstupů, export kalkulace jako JSON a import JSON. Formát JSON musí mít vlastní identifikátor a verzi. Neplatný import ani nepodporovaná verze nesmějí změnit rozepsané údaje. Kontroluj strukturu, datové typy a velikost souboru. Importovaná data nevykresluj přes innerHTML, nepoužívej eval. Kalkulace se nemají automaticky ukládat. Před zavřením jasně upozorni na nutnost exportu; nespoléhej na localStorage.

Přijímej desetinnou čárku i tečku. Peníze nejvýše na 2 desetinná místa, hodiny a procenta na 4. Materiál od 0 do 1 miliardy €, hodiny od 0 do 1 milionu, sazba od 0 do 1 milionu €/hod. Marže od 0 do méně než 100 %. Výsledek nejvýše 1 bilion €. Prázdné vstupy, záporná čísla, nečíselné a příliš velké hodnoty odmítni srozumitelnou chybou. Při chybě odstraň zastaralý výsledek; po opravě ho obnov.

Počítej přesně s centy. Nejprve zaokrouhli náklad práce na centy, připočítej materiál, potom zaokrouhli prodejní cenu na centy. Přesnou polovinu centu zaokrouhli nahoru. R odvoď od zobrazených částek. Uveď, že zaokrouhlení může mírně změnit dosaženou marži. Při nulových nákladech je cena 0 € a procentní marže při nulové ceně nemá význam. Výpočty odděl do testovatelných funkcí. Nepotřebuji slevu, DPH, měny ani další rozšíření.

Otestuj výsledný HTML soubor, nejen izolovaný vzorec. Kontrola: materiál 400 €, 10 hodin × 30 €, marže 30 % → náklady 700 €, cena 1 000 €, částka nad náklady 300 €. Otestuj i nulovou marži, nulové náklady, desetinné hodnoty, neplatné vstupy a jejich opravu, export → zavření → nové otevření → import, chybný JSON a nepodporovanou verzi. Ověř fungování bez sítě v odděleném kontextu prohlížeče; nevypínej internet celému počítači. Vypiš skutečně testovaný prohlížeč a neověřené části. Nakonec mi ukaž výsledný soubor a krátký postup otevření a uložení kalkulace.
