commit 563f963951ddc20c84a0dd824310444ada0ba711 Author: David Spáčil Date: Mon Jun 29 20:21:39 2026 +0200 init diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..51fdcac --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +# Heroltice 2026 + +Statická webová stránka — průvodce dovolenou v Herolticích (část obce Štíty, okres Šumperk) a okolí, s interaktivní mapou. Interní freetime projekt. + +## Soubory + +| soubor | obsah | +|---|---| +| `index.html` | stránka: text zprávy + mapa nahoře (hero) | +| `style.css` | styl (terénní/mapová estetika, značkové markery) | +| `heroltice.geojson` | 11 bodů cílů (CRS84 / WGS84) — jediný zdroj dat pro mapu i karty; otevřeš rovnou v QGIS | +| `.nojekyll` | vypne Jekyll na GitHub Pages (servíruje soubory beze změny) | + +Mapa: **Leaflet** + **OpenStreetMap** / **OpenTopoMap** (přepínač vpravo nahoře), bez API klíče. Knihovna se tahá z CDN (unpkg). + +## Spuštění lokálně + +Stránka načítá `heroltice.geojson` přes `fetch()`, takže **nefunguje přes `file://`** — je potřeba HTTP server: + +```bash +python3 -m http.server 8000 +# pak http://localhost:8000 +``` + +## Nahrání do repa + +Repo už existuje. Nejjednodušší — soubory zkopírovat do klonu a commitnout: + +```bash +git clone https://github.com/david-spacil/heroltice2026.git +cd heroltice2026 +# sem zkopíruj index.html style.css heroltice.geojson README.md .nojekyll +git add index.html style.css heroltice.geojson README.md .nojekyll +git commit -m "Web s interaktivní mapou (Leaflet + OSM/OpenTopoMap)" +git push origin main +``` + +(Nebo přes Gitea→GitHub workflow, který už máš zaběhnutý.) + +## GitHub Pages + +Settings → Pages → *Build and deployment* → Source: **Deploy from a branch** → branch `main`, folder `/ (root)` → Save. +Za chvíli poběží na `https://david-spacil.github.io/heroltice2026/`. + +## Úpravy dat + +Body se mění **jen** v `heroltice.geojson` (souřadnice `[lon, lat]`, vlastnosti `nazev`, `kategorie`, `vzdalenost`, `popis`, `odkaz`, `odkaz_text`). Kategorie: `zakladna`, `kultura`, `priroda`, `archeologie`, `zabava` — barvy řídí CSS třídy `.map-blaze--*` a `.card--*`. Přidání bodu = jeden nový feature, mapa i karty se vygenerují samy. + +## Zdroje dat + +Wikipedie, Památkový katalog NPÚ, ISAD/SAS NPÚ, Archeologické léto, Kudy z nudy a oficiální weby (odkazy v patičce a v sekci *Zdroje*). Mapové podklady © OpenStreetMap přispěvatelé, © OpenTopoMap (CC-BY-SA). diff --git a/heroltice.geojson b/heroltice.geojson new file mode 100644 index 0000000..df1b3e4 --- /dev/null +++ b/heroltice.geojson @@ -0,0 +1,139 @@ +{ + "type": "FeatureCollection", + "name": "heroltice2026_cile", + "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } }, + "features": [ + { + "type": "Feature", + "properties": { + "nazev": "Heroltice (základna)", + "kategorie": "zakladna", + "vzdalenost": "0 km", + "popis": "Výchozí bod. Kostel sv. Jana Křtitele (1718, kulturní památka), rekreační areál Heroltická, lyžařský vlek.", + "odkaz": "https://cs.wikipedia.org/wiki/Heroltice_(%C5%A0t%C3%ADty)", + "odkaz_text": "Wikipedie" + }, + "geometry": { "type": "Point", "coordinates": [16.734010, 49.9872732] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Štíty – náměstí (MPZ)", + "kategorie": "kultura", + "vzdalenost": "~3,5 km", + "popis": "Městská památková zóna. Barokní kostel Nanebevzetí P. Marie (1755), morový sloup (1716), renesanční radnice.", + "odkaz": "https://www.stity.cz/mesto-a-samosprava/zakladni-informace-o-meste/", + "odkaz_text": "Město Štíty" + }, + "geometry": { "type": "Point", "coordinates": [16.7629642, 49.9620552] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Acrobat Park Aleše Valenty", + "kategorie": "zabava", + "vzdalenost": "~3,5 km", + "popis": "Sportovní centrum Aleše Valenty (2002): skoky do vody, trampolíny, wellness, restaurace. Provoz zhruba červen–říjen.", + "odkaz": "https://www.acrobatpark.com/", + "odkaz_text": "Acrobat Park" + }, + "geometry": { "type": "Point", "coordinates": [16.7594473, 49.9615199] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Rozhledna Lázek", + "kategorie": "priroda", + "vzdalenost": "~10–15 km", + "popis": "Nejvyšší bod Zábřežské vrchoviny (715 m). Dřevěná věž z roku 1933, 87 schodů, výhled na Orlické hory a Jeseníky. Otevřeno hlavně o víkendech.", + "odkaz": "https://cs.wikipedia.org/wiki/L%C3%A1zek_(rozhledna)", + "odkaz_text": "Wikipedie" + }, + "geometry": { "type": "Point", "coordinates": [16.7052725, 49.9257063] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Zřícenina hradu Hoštejn", + "kategorie": "archeologie", + "vzdalenost": "~15 km", + "popis": "Gotický hrad (2. pol. 13. stol.), archeologická lokalita ÚAN I. Volně přístupné, památník dráhy, vyhlídka, pítko.", + "odkaz": "https://isad.npu.cz/zricenina-hradu-hostejn-a-stredoveke-jadro-obce-14876", + "odkaz_text": "ISAD / SAS NPÚ" + }, + "geometry": { "type": "Point", "coordinates": [16.7766132, 49.8768548] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Hrad Bludov (Hradisko)", + "kategorie": "archeologie", + "vzdalenost": "~20 km", + "popis": "Pozůstatky hradu na ostrožně, ÚAN I; pobořen 1471 Matyášem Korvínem. Bývá cílem Archeologického léta.", + "odkaz": "https://isad.npu.cz/hrad-bludov-14793", + "odkaz_text": "ISAD / SAS NPÚ" + }, + "geometry": { "type": "Point", "coordinates": [16.9328341, 49.9547992] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Vlastivědné muzeum Šumperk", + "kategorie": "kultura", + "vzdalenost": "~20 km", + "popis": "„Brána Jeseníků“. Expozice čarodějnických procesů (Geschaderův dům), historické jádro města.", + "odkaz": "https://muzeum-sumperk.cz/", + "odkaz_text": "Vlastivědné muzeum" + }, + "geometry": { "type": "Point", "coordinates": [16.9783623, 49.9651256] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Zámek Velké Losiny", + "kategorie": "kultura", + "vzdalenost": "~35 km", + "popis": "Renesanční žerotínský zámek s arkádami; spjatý s čarodějnickými procesy. Zavřeno v pondělí.", + "odkaz": "http://www.zamek-velkelosiny.cz/", + "odkaz_text": "Zámek Velké Losiny" + }, + "geometry": { "type": "Point", "coordinates": [17.0313608, 50.0234475] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Ruční papírna Velké Losiny", + "kategorie": "kultura", + "vzdalenost": "~35 km", + "popis": "Nejstarší funkční papírna střední Evropy (zal. 1591–1596), národní kulturní památka, Muzeum papíru.", + "odkaz": "https://cs.wikipedia.org/wiki/Ru%C4%8Dn%C3%AD_pap%C3%ADrna_Velk%C3%A9_Losiny", + "odkaz_text": "Wikipedie" + }, + "geometry": { "type": "Point", "coordinates": [17.0380374, 50.0296768] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Hora Matky Boží (Dolní Hedeč)", + "kategorie": "kultura", + "vzdalenost": "~20–25 km", + "popis": "Barokní poutní klášter nad Králíky (765 m), národní kulturní památka, Svaté schody, alej s křížovou cestou.", + "odkaz": "https://cs.wikipedia.org/wiki/Hora_Matky_Bo%C5%BE%C3%AD", + "odkaz_text": "Wikipedie" + }, + "geometry": { "type": "Point", "coordinates": [16.781944, 50.075000] } + }, + { + "type": "Feature", + "properties": { + "nazev": "Dělostřelecká tvrz Bouda", + "kategorie": "kultura", + "vzdalenost": "~25–30 km", + "popis": "Nejzachovalejší čs. dělostřelecká tvrz (1936–38), podzemí přes 1,7 km. Sezona květen–říjen, teplé oblečení.", + "odkaz": "https://www.tvrzbouda.cz/", + "odkaz_text": "Tvrz Bouda" + }, + "geometry": { "type": "Point", "coordinates": [16.6770282, 50.0693222] } + } + ] +} diff --git a/index.html b/index.html new file mode 100644 index 0000000..de16966 --- /dev/null +++ b/index.html @@ -0,0 +1,319 @@ + + + + + +Heroltice 2026 — průvodce dovolenou a okolím + + + + + + + + + + + + +
+
+
+ + Terénní zápisník · interní freetime +
+

Heroltice 2026 + Část obce Štíty, okres Šumperk. Klidná horská vesnička na česko-moravském pomezí — historie, památky, večerní zábava a vějíř výletů do okolí. +

+
+ 49.987° N · 16.734° E + 450–750 m n. m. + Olomoucký kraj +
+
+
+ +
+
+
Mapové podklady přepneš vpravo nahoře (OSM / OpenTopoMap). Klikni na značku nebo na kartu cíle níže.
+

+ Mapu se nepodařilo načíst. Stránka čte heroltice.geojson přes fetch(), což funguje jen po HTTP — tedy na GitHub Pages nebo přes lokální server (python3 -m http.server), ne otevřením souboru přes file://. +

+
+ + + +
+ +
+

Přehled

+
+
89
obyvatel (2021)
+
1278
první zmínka
+
1718
kostel sv. Jana Křtitele
+
~3,5 km
do Štítů
+
+
+

Shrnutí

+

Heroltice jsou malá horská vesnička (89 obyvatel dle Sčítání 2021) 3,5 km severoseverozápadně od Štítů; hlavní památkou je chráněný kostel sv. Jana Křtitele (1718). Vlastní večerní zábava je minimální (rekreační areál Heroltická, spolkové akce) — širší nabídka je ve Štítech a Zábřehu. Okolí nabízí bohaté výlety: městská památková zóna Štíty s Acrobat Parkem, přírodní park Březná, rozhlednu Lázek, poutní Horu Matky Boží, tvrz Bouda a Velké Losiny.

+
+
+ +
+
01

Heroltice

+
+

Shrnutí sekce

+

První zmínka 1278, jméno zřejmě od zakladatele Heralta. V 19. století lidnatá obec (přes 1000 obyvatel), po odsunu německého obyvatelstva a začlenění ke Štítům (1976) výrazný úpadek na dnešních 89 obyvatel. Dominantou je barokní kostel sv. Jana Křtitele z roku 1718 (kulturní památka), doplněný empírovou farou a sousoším Nejsvětější Trojice. Vlastní večerní zábava je v obci minimální.

+
+ +

Historie

+

Heroltice (německy Herautz) jsou sídlo uličního typu roztažené podél Heroltického potoka, který pod obcí ústí do řeky Březná. Leží v údolí mezi Jeseníky a Orlickými horami v nadmořské výšce 450–750 m n. m.; díky okolním kopcům a lyžařskému vleku mají výrazně horský charakter. Jméno pochází zřejmě podle zakladatele Heralta či Heralda (německý název Herautz, dřívější české Heraltice).

+

Obec je připomínána od roku 1278 jako Velké (Dolní) Heroltice; přináležela ke štíteckému (šilperskému) panství. V roce 1623 se dostala se šilperským panstvím pod lichtenštejnskou správu se sídlem v Rudě nad Moravou. Patřila k největším vsím panství — roku 1834 měla 156 domů a 1026 obyvatel, vesměs německé národnosti. V roce 1930 zde žilo 575 osob; po odsunu a dosídlení počet jen o málo přesáhl 130 lidí. V roce 1976 (jinde uváděno 1978) byly Heroltice připojeny ke Štítům. Dnes mají 89 obyvatel (Sčítání 2021, ČSÚ). Z obce pocházel politik Rudolf Felzmann (1866–1937). Zdroj: Wikipedie.

+ +

Pamětihodnosti

+

Kostel sv. Jana Křtitele — kulturní památka

+

Původně barokní kaple z roku 1718 ve výšce 537 m n. m. Zděný orientovaný kostel s půlkruhovým závěrem, věží (28 m) a sakristií; nad vstupem světlík s božím okem a monogramem IHS. Obrazy v interiéru vyobrazují život a smrt Jana Křtitele, varhany mají ojedinělou květinovou výzdobu omítek z roku 1910. Od roku 2009 chráněná kulturní památka. Zdroj: Památkový katalog NPÚ.

+

Bývalá fara (čp. 158) — kulturní památka

+

Empírový dům severně od kostela z první poloviny 19. století, doklad zlidovělé architektury s fasádou zdobenou maltovým štukem.

+

Sousoší Nejsvětější Trojice

+

Kamenné sousoší v postranní uličce nedaleko kostela, patrně dílo místního kameníka; na postamentu dedikační nápis. V obci a okolí najdeš i kříže a boží muka typická pro chudé obce na pomezí.

+

Archeologie

+

Pro katastr „Heroltice u Štítů“ není v ISAD/SAS NPÚ ani v AMCR evidován samostatný archeologický záznam (ÚAN I/II) — ověřeno, prázdno. Celé území ČR přitom spadá minimálně do kategorie ÚAN III, kde výskyt nálezů nelze vyloučit.

+ +

Večerní zábava

+

V Herolticích je nabídka minimální a odpovídá klidnému rekreačnímu charakteru: rekreační areál Heroltická (sportoviště, hospůdka, wellness, chatky, kemp), lyžařský vlek a spolkové akce (hasičský ples, sraz RC modelářů). Ve Štítech (~3,5 km) jsou restaurace a hospody (např. u penzionu Černá kočka), diskotéka a Acrobat Park s restaurací a wellness. V Zábřehu funguje pivovar Welzl s restaurací „Kotelna“.

+
+ +
+
02

Tipy v okolí

+
+

Shrnutí sekce

+

V dosahu 15–40 km je hustá síť cílů. Kulturně dominuje městská památková zóna Štíty, zřícenina Hoštejn, Šumperk (čarodějnické procesy), Velké Losiny (zámek + nejstarší funkční ruční papírna střední Evropy), poutní Hora Matky Boží a tvrz Bouda. Přírodně je nejblíže přírodní park Březná (jarní bledule) a rozhledna Lázek. Archeologicky vynikají lokality ÚAN I Hoštejn a Bludov, v sezoně s prohlídkami Archeologického léta.

+
+ +

Cíle na mapě

+

Karty odpovídají značkám na mapě nahoře. Klikni na kartu — mapa na cíl odskočí a otevře jeho popis.

+
+

Načítám cíle z heroltice.geojson

+
+ +

Kulturní památky

+

Štíty (~3,5 km) — historické jádro je městskou památkovou zónou. Barokní kostel Nanebevzetí Panny Marie (1755), mariánský morový sloup (1716), sochy sv. Jana Nepomuckého (1732) a sv. Anny (1769), renesanční stará radnice. Acrobat Park olympijského vítěze Aleše Valenty (otevřen 2002) — skoky do vody, trampolíny, závod Freestyle Czech Open.

+

Zřícenina hradu Hoštejn (~15 km) — gotický hrad z 2. pol. 13. století, za husitských válek opěrný bod husitů; zdivo v roce 1845 rozebráno na stavbu železnice. Kulturní památka od 1964.

+

Šumperk (~20 km) — „brána Jeseníků“: Vlastivědné muzeum (Pavlínin dvůr) a expozice čarodějnických procesů v Geschaderově domě.

+

Velké Losiny (~35 km) — renesanční žerotínský zámek a ruční papírna (zal. 1591–1596), nejstarší funkční papírenská manufaktura střední Evropy, národní kulturní památka s Muzeem papíru; v obci termální lázně.

+

Hora Matky Boží, Dolní Hedeč (~20–25 km) — barokní poutní klášter nad Králíky (765 m), kostel dokončen 1700, klášter 1710, národní kulturní památka od 2018; lipová alej z roku 1705 s osmi kaplemi.

+

Dělostřelecká tvrz Bouda (~25–30 km) — nejzachovalejší čs. dělostřelecká tvrz (1936–38), největší muzeum opevnění v ČR; 5 srubů a podzemí přes 1,7 km. Kulturní památka od 1995.

+ +

Přírodní památky

+

Přírodní park Březná — zřízen 1997 na ploše 11 600 ha; údolí řek Březná a Moravská Sázava, jarní koberce bledule jarní, balvanová moře a mrazové sruby na svazích Pálené hory a Vlčí jámy. Severní část katastru Štítů i Heroltice zasahují do ptačí oblasti Králický Sněžník (ochrana chřástala polního).

+

Rozhledna Lázek (~10–15 km) — nejvyšší bod Zábřežské vrchoviny (715 m), dřevěná věž z roku 1933, 87 schodů, výhled na Orlické hory, Jeseníky, Krkonoše a Železné hory.

+

Národní přírodní rezervace v širším okolí (okres Šumperk): Králický Sněžník, Praděd, Rašeliniště Skřítek a Šerák-Keprník + CHKO Jeseníky — na celodenní výlet.

+ +

Archeologie

+

Hoštejn (ID SAS 14876, ÚAN I) a Bludov (ID SAS 14793, ÚAN I) jsou významné archeologické lokality. Archeologické léto (koordinují Archeologické ústavy AV ČR, regionálně Vlastivědné muzeum v Šumperku) nabízí v sezoně komentované prohlídky — mj. hrad Bludov a expozici „Pravěk Mohelnicka“.

+
+ +
+

Praktické tipy

+

Doporučení pro plánování

+

Základní pobyt: klidná aktivní dovolená — cykloturistika údolím Březné, houbaření, pěší turistika, v zimě lyžování. Ubytování: rekreační areál Heroltická nebo chalupy.

+

Večerní program: Štíty (~3,5 km) nebo Zábřeh (pivovar Welzl).

+

Půldenní výlety: Štíty + Acrobat Park · rozhledna Lázek · přírodní park Březná (na jaře bledule) · zřícenina Hoštejn.

+

Celodenní výlety: Hora Matky Boží + tvrz Bouda · Velké Losiny (zámek, papírna, lázně) · Šumperk.

+

Archeologie: sleduj archeologickeleto.cz (rezervace zpravidla od začátku června).

+
+ +
+

Caveats

+

Upozornění a omezení

+
+
    +
  • Sezónnost: rozhledna Lázek, papírna, tvrz Bouda i akce Archeologického léta mají omezenou otevírací dobu (zpravidla květen–říjen / o víkendech). Před cestou ověř aktuální stav.
  • +
  • Doprava: železniční trať do Štítů byla v roce 2018 zrušena — autem nebo autobusem.
  • +
  • Rozpory v pramenech: připojení Heroltic ke Štítům (1976 vs. 1978); zápis kostela ve Štítech mezi KP (1958 vs. 1964); papírna NKP (2001 vs. 2002); podzemí Boudy „přes 1,7 km“ vs. zaokrouhleno 1,5 km.
  • +
  • Vzdálenosti jsou orientační (po silnici), ověř v mapové aplikaci.
  • +
+
+
+ +
+

Ověřené zdroje

+

Zdroje a odkazy

+ +
+
+ + + + + + + diff --git a/style.css b/style.css new file mode 100644 index 0000000..9ed3cbb --- /dev/null +++ b/style.css @@ -0,0 +1,269 @@ +/* ========================================================= + Heroltice 2026 — terénní zápisník + Paleta: lesní inkoust + parchment, kategorie jako turistické značky + ========================================================= */ + +:root { + --ink: #15231d; + --ink-soft: #2b3d35; + --paper: #eef1ea; + --card: #fbfcf9; + --green: #2f6f57; + --green-deep: #1f4f3e; + + --cat-zakladna: #cf3b2e; + --cat-kultura: #2f6f9f; + --cat-priroda: #3a7d44; + --cat-archeologie: #b07d2b; + --cat-zabava: #7d5ba6; + + --line: rgba(21, 35, 29, 0.14); + --muted: #5c6b63; + + --maxw: 1080px; + --r: 8px; + + --disp: "Zilla Slab", Georgia, serif; + --body: "Source Sans 3", system-ui, -apple-system, sans-serif; + --mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace; +} + +* { box-sizing: border-box; } + +html { scroll-behavior: smooth; } +@media (prefers-reduced-motion: reduce) { + html { scroll-behavior: auto; } + * { animation: none !important; transition: none !important; } +} + +body { + margin: 0; + font-family: var(--body); + color: var(--ink); + background: var(--paper); + line-height: 1.62; + font-size: 17px; + -webkit-font-smoothing: antialiased; +} + +a { color: var(--green-deep); text-underline-offset: 2px; } +a:hover { color: var(--cat-zakladna); } + +.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 22px; } + +/* ---------- eyebrow / mono labels ---------- */ +.eyebrow { + font-family: var(--mono); + font-size: 12px; + letter-spacing: 0.14em; + text-transform: uppercase; + color: var(--green); + margin: 0 0 10px; +} +.coords { font-family: var(--mono); font-size: 12.5px; color: var(--muted); } + +/* ---------- header / hero ---------- */ +.masthead { + position: relative; + background: var(--ink); + color: #e9efe8; + overflow: hidden; + border-bottom: 4px solid var(--green); +} +/* jemná vrstevnicová textura */ +.masthead::before { + content: ""; + position: absolute; inset: 0; + background-image: + radial-gradient(circle at 20% 30%, transparent 38px, rgba(255,255,255,0.04) 39px, transparent 40px), + radial-gradient(circle at 20% 30%, transparent 70px, rgba(255,255,255,0.035) 71px, transparent 72px), + radial-gradient(circle at 20% 30%, transparent 104px, rgba(255,255,255,0.03) 105px, transparent 106px), + radial-gradient(circle at 78% 72%, transparent 50px, rgba(255,255,255,0.04) 51px, transparent 52px), + radial-gradient(circle at 78% 72%, transparent 90px, rgba(255,255,255,0.03) 91px, transparent 92px); + pointer-events: none; +} +.masthead .wrap { position: relative; padding: 46px 22px 30px; } + +.kicker { + display: inline-flex; align-items: center; gap: 9px; + font-family: var(--mono); font-size: 12px; letter-spacing: 0.16em; + text-transform: uppercase; color: #9fc3ad; + margin-bottom: 16px; +} +.kicker .blz { display: inline-flex; gap: 3px; } +.kicker .blz i { + width: 11px; height: 11px; border: 1.5px solid rgba(255,255,255,0.55); border-radius: 2px; +} + +.masthead h1 { + font-family: var(--disp); font-weight: 700; + font-size: clamp(34px, 6vw, 60px); + line-height: 1.02; margin: 0 0 14px; letter-spacing: -0.01em; +} +.masthead h1 small { + display: block; font-family: var(--body); font-weight: 400; + font-size: clamp(15px, 2.2vw, 19px); color: #b9d2c2; letter-spacing: 0; + margin-top: 10px; max-width: 60ch; +} +.masthead .meta { + display: flex; flex-wrap: wrap; gap: 8px 26px; margin-top: 22px; + font-family: var(--mono); font-size: 12.5px; color: #9fc3ad; +} + +/* ---------- map ---------- */ +.mapwrap { position: relative; background: var(--ink); } +#map { + height: clamp(380px, 62vh, 620px); + width: 100%; + background: #dfe4dc; +} +.maphint { + font-family: var(--mono); font-size: 12px; color: #9fc3ad; + text-align: center; padding: 9px 16px; background: var(--ink); +} +.map-error { + display: none; + padding: 18px 20px; margin: 0; background: #fbeceb; color: #7a241c; + border-top: 3px solid var(--cat-zakladna); font-size: 15px; +} +.map-error code { font-family: var(--mono); font-size: 13px; } + +/* Leaflet popup ladění */ +.leaflet-popup-content-wrapper { border-radius: var(--r); } +.leaflet-popup-content { margin: 13px 15px; font-family: var(--body); } +.pop-cat { + font-family: var(--mono); font-size: 11px; letter-spacing: 0.12em; + text-transform: uppercase; font-weight: 500; +} +.pop-name { font-family: var(--disp); font-weight: 600; font-size: 18px; margin: 3px 0 6px; } +.pop-desc { font-size: 14px; color: #333; margin: 0 0 8px; } +.pop-foot { font-family: var(--mono); font-size: 12px; display: flex; justify-content: space-between; gap: 12px; } + +/* značkové (KČT-style) markery */ +.map-blaze { + display: block; width: 17px; height: 17px; + border: 2.5px solid #fff; border-radius: 3px; + box-shadow: 0 1px 3px rgba(0,0,0,0.45); +} +.map-blaze--kultura { background: var(--cat-kultura); } +.map-blaze--priroda { background: var(--cat-priroda); } +.map-blaze--archeologie { background: var(--cat-archeologie); } +.map-blaze--zabava { background: var(--cat-zabava); } +.map-blaze--zakladna { background: var(--cat-zakladna); } +.map-blaze--base { + width: 22px; height: 22px; border-radius: 50%; + box-shadow: 0 0 0 4px rgba(207,59,46,0.28), 0 1px 4px rgba(0,0,0,0.5); +} + +/* legenda */ +.legend { + background: var(--card); padding: 10px 12px; border-radius: var(--r); + box-shadow: 0 1px 6px rgba(0,0,0,0.18); font-size: 13px; line-height: 1.7; +} +.legend b { font-family: var(--mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); display: block; margin-bottom: 5px; } +.legend .row { display: flex; align-items: center; gap: 8px; } +.legend i { width: 13px; height: 13px; border: 2px solid #fff; border-radius: 3px; box-shadow: 0 0 0 1px var(--line); } + +/* ---------- nav ---------- */ +.toc { + position: sticky; top: 0; z-index: 500; + background: rgba(238,241,234,0.94); + backdrop-filter: blur(6px); + border-bottom: 1px solid var(--line); +} +.toc .wrap { display: flex; flex-wrap: wrap; gap: 4px 18px; padding: 11px 22px; } +.toc a { + font-family: var(--mono); font-size: 12.5px; letter-spacing: 0.04em; + text-decoration: none; color: var(--ink-soft); padding: 4px 0; + border-bottom: 2px solid transparent; +} +.toc a:hover { color: var(--green-deep); border-color: var(--green); } + +/* ---------- sections ---------- */ +section { padding: 46px 0; border-top: 1px solid var(--line); } +section:first-of-type { border-top: none; } + +.sec-head { display: flex; align-items: baseline; gap: 14px; margin-bottom: 6px; } +.sec-num { + font-family: var(--mono); font-size: 13px; color: var(--green); + border: 1.5px solid var(--green); border-radius: 3px; padding: 2px 7px; flex: none; +} +h2 { + font-family: var(--disp); font-weight: 700; font-size: clamp(24px, 3.4vw, 34px); + line-height: 1.1; margin: 0; letter-spacing: -0.01em; +} +h3 { + font-family: var(--disp); font-weight: 600; font-size: 20px; + margin: 30px 0 8px; color: var(--green-deep); +} +h4 { font-family: var(--disp); font-weight: 600; font-size: 16px; margin: 18px 0 4px; } +p { margin: 0 0 14px; } +.lead { font-size: 18.5px; } + +/* shrnutí (terénní pole) */ +.summary { + background: var(--card); border-left: 4px solid var(--green); + border-radius: 0 var(--r) var(--r) 0; + padding: 16px 18px; margin: 18px 0 28px; + box-shadow: 0 1px 4px rgba(21,35,29,0.06); +} +.summary .eyebrow { color: var(--green); margin-bottom: 6px; } +.summary p { margin: 0; } + +/* fakta strip */ +.facts { + display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; + background: var(--line); border: 1px solid var(--line); border-radius: var(--r); + overflow: hidden; margin: 0 0 6px; +} +.facts div { background: var(--paper); padding: 14px 16px; } +.facts .n { font-family: var(--disp); font-weight: 700; font-size: 24px; color: var(--green-deep); } +.facts .l { font-family: var(--mono); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); } + +/* karty cílů */ +.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; margin-top: 10px; } +.card { + background: var(--card); border: 1px solid var(--line); border-left: 5px solid var(--muted); + border-radius: var(--r); padding: 15px 16px; cursor: pointer; + transition: transform 0.16s ease, box-shadow 0.16s ease; +} +.card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(21,35,29,0.12); } +.card--kultura { border-left-color: var(--cat-kultura); } +.card--priroda { border-left-color: var(--cat-priroda); } +.card--archeologie { border-left-color: var(--cat-archeologie); } +.card--zabava { border-left-color: var(--cat-zabava); } +.card--zakladna { border-left-color: var(--cat-zakladna); } +.card .c-top { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; } +.card .c-cat { font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); } +.card .c-dist { font-family: var(--mono); font-size: 12px; color: var(--green); white-space: nowrap; } +.card h4 { margin: 5px 0 7px; } +.card .c-desc { font-size: 14.5px; color: #3a463f; margin: 0 0 10px; } +.card .c-coords { font-family: var(--mono); font-size: 11.5px; color: var(--muted); } +.card a.c-src { font-family: var(--mono); font-size: 12px; } + +/* odkazy / zdroje */ +.linklist { columns: 2; column-gap: 34px; font-size: 14.5px; } +.linklist h4 { break-after: avoid; } +.linklist ul { margin: 0 0 14px; padding-left: 18px; } +.linklist li { margin-bottom: 5px; break-inside: avoid; } +@media (max-width: 620px) { .linklist { columns: 1; } } + +/* upozornění */ +.note { + background: #fff8e9; border: 1px solid #e6cf9b; border-radius: var(--r); + padding: 16px 18px; +} +.note ul { margin: 8px 0 0; padding-left: 18px; } +.note li { margin-bottom: 6px; } + +/* footer */ +footer { + background: var(--ink); color: #9fc3ad; padding: 26px 0; margin-top: 10px; + font-family: var(--mono); font-size: 12.5px; border-top: 4px solid var(--green); +} +footer a { color: #cfe3d6; } + +@media (max-width: 700px) { + .facts { grid-template-columns: repeat(2, 1fr); } + body { font-size: 16px; } +}