{"id":4562,"date":"2026-07-20T14:16:28","date_gmt":"2026-07-20T12:16:28","guid":{"rendered":"https:\/\/melodiedomova.cz\/?page_id=4562"},"modified":"2026-07-25T10:29:03","modified_gmt":"2026-07-25T08:29:03","slug":"hra-herbar","status":"publish","type":"page","link":"https:\/\/melodiedomova.cz\/?page_id=4562","title":{"rendered":"hra herbar"},"content":{"rendered":"\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=MedievalSharp&display=swap');\n\n\/* SKRYT\u00cd MENU, LOGA A HLAVI\u010cKY POUZE PRO STR\u00c1NKU ID 4562 *\/\nbody.page-id-4562 header,\nbody.page-id-4562 .site-header,\nbody.page-id-4562 #site-header,\nbody.page-id-4562 .header-wrapper,\nbody.page-id-4562 #masthead,\nbody.page-id-4562 .ast-main-header-wrap,\nbody.page-id-4562 .elementor-location-header,\nbody.page-id-4562 nav,\nbody.page-id-4562 .main-navigation,\nbody.page-id-4562 .site-navigation,\nbody.page-id-4562 .site-logo,\nbody.page-id-4562 .custom-logo,\nbody.page-id-4562 .custom-logo-link,\nbody.page-id-4562 .brand,\nbody.page-id-4562 .navbar {\n  display: none !important;\n}\n\n\/* POZAD\u00cd P\u0158ES \u00daPLN\u011a CELOU STR\u00c1NKU *\/\nhtml, \nbody.page-id-4562, \nbody.page-id-4562 #page, \nbody.page-id-4562 #content, \nbody.page-id-4562 .site-content {\n  background-color: #f4efe2 !important;\n  background-image: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.5) 0%, rgba(220,208,180,0.35) 100%) !important;\n  min-height: 100vh;\n}\n\n.herbar-wrapper {\n  --parch: #e8d9b5;\n  --parch-dark: #d4c49a;\n  --ink: #2c1a05;\n  --ink-mid: #5a3a10;\n  --ink-light: #7a5828;\n  --ink-faint: #c9a96e;\n  --green-ok: #2d5a18;\n  --red-err: #7a1a1a;\n  \n  width: 100%;\n  max-width: 760px;\n  margin: 0 auto;\n  padding: 2rem 1rem;\n  box-sizing: border-box;\n  font-family: Georgia, 'Times New Roman', Times, serif;\n}\n\n.herbar-wrapper * { \n  box-sizing: border-box; \n  margin: 0; \n  padding: 0; \n}\n\n\/* STR\u00c1NKA HERB\u00c1\u0158E *\/\n.herbar-wrapper .page {\n  background: var(--parch);\n  background-image:\n    radial-gradient(ellipse at 10% 15%, rgba(139,100,40,.18) 0%, transparent 55%),\n    radial-gradient(ellipse at 88% 80%, rgba(100,70,20,.14) 0%, transparent 50%),\n    url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='400' height='400'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'\/%3E%3CfeColorMatrix type='saturate' values='0'\/%3E%3C\/filter%3E%3Crect width='400' height='400' filter='url(%23n)' opacity='0.04'\/%3E%3C\/svg%3E\");\n  border: 3px solid var(--ink-light);\n  border-radius: 4px;\n  padding: 2.5rem 1.5rem 2rem;\n  width: 100%;\n  position: relative;\n  overflow: hidden;\n  box-shadow: 0 10px 25px rgba(0,0,0,0.15);\n}\n\n@media (min-width: 600px) {\n  .herbar-wrapper .page {\n    padding: 2.5rem 2.5rem 2rem;\n  }\n}\n\n.herbar-wrapper .page::before {\n  content: '';\n  position: absolute;\n  inset: 10px;\n  border: 1px solid rgba(122,88,40,.3);\n  pointer-events: none;\n}\n\n\/* liniov\u00e1n\u00ed *\/\n.herbar-wrapper .lines-bg {\n  position: absolute;\n  inset: 0;\n  background-image: repeating-linear-gradient(\n    0deg, transparent, transparent 27px,\n    rgba(100,70,20,.05) 27px, rgba(100,70,20,.05) 28px\n  );\n  pointer-events: none;\n}\n\n\/* skvrny *\/\n.herbar-wrapper .stain {\n  position: absolute;\n  border-radius: 50%;\n  pointer-events: none;\n}\n.herbar-wrapper .s1 { width:100px; height:65px; background:rgba(120,80,20,.06); top:35px; left:15px; transform:rotate(-12deg); }\n.herbar-wrapper .s2 { width:65px; height:45px; background:rgba(100,60,10,.05); bottom:70px; right:25px; transform:rotate(7deg); }\n.herbar-wrapper .s3 { width:45px; height:30px; background:rgba(80,50,10,.04); top:180px; right:20px; }\n\n\/* kaprad\u00ed SVG *\/\n.herbar-wrapper .fern {\n  position: absolute;\n  opacity: .12;\n  pointer-events: none;\n}\n.herbar-wrapper .fern-tl { top:10px; left:10px; width:85px; }\n.herbar-wrapper .fern-br { bottom:10px; right:10px; width:70px; transform:rotate(180deg) scaleX(-1); }\n\n\/* NADPIS *\/\n.herbar-wrapper .title-block { text-align: center; margin-bottom: .6rem; position: relative; z-index: 1; }\n\n.herbar-wrapper .title-small {\n  font-family: Georgia, 'Times New Roman', serif;\n  font-style: italic;\n  font-size: 13px;\n  color: #6b4a1a;\n  letter-spacing: 2px;\n  margin-bottom: 7px;\n}\n\n.herbar-wrapper .title-main {\n  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;\n  font-size: 28px;\n  font-weight: bold;\n  color: var(--ink);\n  line-height: 1.15;\n  margin-bottom: 5px;\n  font-variant: small-caps;\n  letter-spacing: 2px;\n}\n\n@media (min-width: 480px) {\n  .herbar-wrapper .title-main {\n    font-size: 34px;\n  }\n}\n\n.herbar-wrapper .title-sub {\n  font-family: Georgia, serif;\n  font-size: 11px;\n  letter-spacing: 5px;\n  color: var(--ink-light);\n  text-transform: uppercase;\n}\n\n\/* ODD\u011aLOVA\u010c *\/\n.herbar-wrapper .divider {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  margin: .85rem 0;\n  position: relative; z-index:1;\n}\n.herbar-wrapper .divider-line { flex:1; border:none; border-top:1px solid rgba(122,88,40,.4); }\n.herbar-wrapper .divider-orn { color: var(--ink-light); font-size: 15px; flex-shrink:0; }\n\n\/* POPISEK NAD POL\u00cd\u010cKY *\/\n.herbar-wrapper .keys-label {\n  font-family: Georgia, serif;\n  font-size: 11px;\n  letter-spacing: 4px;\n  color: var(--ink-light);\n  text-align: center;\n  text-transform: uppercase;\n  margin-bottom: .9rem;\n  position: relative; z-index:1;\n}\n\n\/* M\u0158\u00cd\u017dKA *\/\n.herbar-wrapper .keys-grid {\n  display: grid;\n  grid-template-columns: repeat(1, 1fr);\n  gap: 12px;\n  margin-bottom: 10px;\n  position: relative; z-index:1;\n}\n\n@media (min-width: 480px) {\n  .herbar-wrapper .keys-grid {\n    grid-template-columns: repeat(3, 1fr);\n  }\n}\n\n.herbar-wrapper .key-slot { display: flex; flex-direction: column; }\n\n\/* STYL PRO N\u00c1ZVY KV\u011aTIN *\/\n.herbar-wrapper .key-slot label {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-weight: normal;\n  font-size: 14px;\n  color: var(--ink-light);\n  text-align: center;\n  margin-bottom: 6px;\n  line-height: 1.3;\n  min-height: 32px;\n}\n\n@media (min-width: 480px) {\n  .herbar-wrapper .key-slot label {\n    font-size: 15px;\n  }\n}\n\n.herbar-wrapper .key-wrap {\n  display: flex;\n  align-items: center;\n  background: rgba(200,170,100,.2);\n  border: 1px solid rgba(122,88,40,.5);\n  padding: 6px 9px;\n  gap: 6px;\n  transition: border-color .2s, background .2s;\n}\n.herbar-wrapper .key-wrap:focus-within {\n  border-color: rgba(80,50,10,.7);\n  background: rgba(200,170,100,.32);\n}\n\n.herbar-wrapper .key-glyph {\n  font-size: 14px;\n  flex-shrink: 0;\n  opacity: .65;\n  color: var(--ink-mid);\n}\n\n\/* VSTUPN\u00cd POLE *\/\n.herbar-wrapper .key-wrap input {\n  flex: 1;\n  background: transparent;\n  border: none;\n  outline: none;\n  font-family: Georgia, serif;\n  font-size: 13px;\n  color: var(--ink);\n  width: 100%;\n  padding: 0;\n  min-width: 0;\n  text-align: left;\n}\n.herbar-wrapper .key-wrap input::placeholder { color: rgba(122,88,40,.4); font-style: italic; }\n.herbar-wrapper .key-wrap input.ok { color: var(--green-ok); font-weight: bold; }\n.herbar-wrapper .key-wrap input.bad { color: var(--red-err); }\n\n\/* TE\u010cKY PR\u016eB\u011aHU *\/\n.herbar-wrapper .progress-dots {\n  display: flex;\n  justify-content: center;\n  gap: 6px;\n  margin: .7rem 0 .35rem;\n  position: relative; z-index:1;\n}\n.herbar-wrapper .pdot {\n  width: 8px; height: 8px;\n  border-radius: 50%;\n  border: 1px solid rgba(122,88,40,.4);\n  transition: all .25s;\n}\n.herbar-wrapper .pdot.lit { background: #5a8a2a; border-color: #5a8a2a; }\n\n\/* TLA\u010c\u00cdTKO *\/\n.herbar-wrapper .seal-btn {\n  display: block;\n  margin: .9rem auto 0;\n  font-family: Georgia, serif;\n  font-size: 12px;\n  font-weight: bold;\n  letter-spacing: 3px;\n  background: var(--ink);\n  color: var(--parch);\n  border: 1px solid var(--ink-light);\n  padding: .75rem 1.5rem;\n  cursor: pointer;\n  text-transform: uppercase;\n  transition: background .2s;\n  position: relative; z-index:1;\n}\n.herbar-wrapper .seal-btn:hover { background: #1a0f02; }\n\n\/* STAVOV\u00c1 ZPR\u00c1VA *\/\n.herbar-wrapper .hstatus {\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-size: 12.5px;\n  color: var(--ink-light);\n  text-align: center;\n  margin-top: .5rem;\n  min-height: 20px;\n  position: relative; z-index:1;\n}\n.herbar-wrapper .hstatus.err { color: var(--red-err); }\n.herbar-wrapper .hstatus.win { color: var(--green-ok); }\n\n\/* PATI\u010cKA *\/\n.herbar-wrapper .footer-note {\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-size: 11px;\n  color: rgba(122,88,40,.5);\n  text-align: center;\n  margin-top: 1rem;\n  letter-spacing: 1px;\n  position: relative; z-index:1;\n}\n\n\/* STR\u00c1NKA \u00daSP\u011aCHU *\/\n.herbar-wrapper .success-wrap {\n  display: none;\n  text-align: center;\n  padding: .5rem 0;\n  animation: hFadeUp .8s ease both;\n  position: relative; z-index:1;\n}\n@keyframes hFadeUp { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }\n\n.herbar-wrapper .success-cap {\n  font-family: 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;\n  font-size: 28px;\n  font-variant: small-caps;\n  letter-spacing: 3px;\n  color: var(--ink);\n  margin-bottom: .3rem;\n}\n\n.herbar-wrapper .success-verse {\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-size: 14px;\n  color: #3a2408;\n  line-height: 1.95;\n  margin-bottom: 1.3rem;\n  text-align: left;\n}\n\n.herbar-wrapper .gate-svg { display: block; margin: .8rem auto; max-width: 100%; height: auto; }\n\n.herbar-wrapper .reward-parchment {\n  background: rgba(200,170,100,.22);\n  border: 1px solid rgba(122,88,40,.5);\n  padding: 1rem 1.4rem;\n  margin-bottom: .8rem;\n  text-align: left;\n}\n.herbar-wrapper .reward-cap {\n  font-family: Georgia, serif;\n  font-size: 9px;\n  letter-spacing: 4px;\n  color: var(--ink-light);\n  text-transform: uppercase;\n  margin-bottom: .5rem;\n}\n.herbar-wrapper .reward-text {\n  font-family: Georgia, serif;\n  font-size: 14px;\n  color: var(--ink);\n  line-height: 1.9;\n  white-space: pre-wrap;\n}\n\n.herbar-wrapper .back-btn {\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-size: 12px;\n  background: transparent;\n  border: 1px solid rgba(122,88,40,.4);\n  color: var(--ink-light);\n  padding: .4rem 1.3rem;\n  cursor: pointer;\n  margin-top: .5rem;\n  transition: background .2s;\n}\n.herbar-wrapper .back-btn:hover { background: rgba(122,88,40,.1); }\n\n\/* KNIHA \u00daSP\u011a\u0160N\u00ddCH *\/\n.herbar-wrapper .solvers-box {\n  margin-top: 1.2rem;\n  padding-top: 1rem;\n  border-top: 1px dashed rgba(122,88,40,.35);\n  position: relative; z-index: 1;\n}\n.herbar-wrapper .solvers-box-title {\n  font-family: Georgia, serif;\n  font-size: 11px;\n  letter-spacing: 3px;\n  color: var(--ink-light);\n  text-transform: uppercase;\n  text-align: center;\n  margin-bottom: .6rem;\n}\n.herbar-wrapper .solvers-list {\n  list-style: none;\n  max-height: 180px;\n  overflow-y: auto;\n  font-family: Georgia, serif;\n  font-size: 12.5px;\n  color: var(--ink-mid);\n}\n.herbar-wrapper .solvers-list li {\n  display: flex;\n  justify-content: space-between;\n  gap: 10px;\n  padding: 5px 6px;\n  border-bottom: 1px dotted rgba(122,88,40,.25);\n}\n.herbar-wrapper .solvers-list li:last-child { border-bottom: none; }\n.herbar-wrapper .solvers-name { font-weight: bold; color: var(--ink); }\n.herbar-wrapper .solvers-meta { font-style: italic; color: var(--ink-light); font-size: 11px; white-space: nowrap; }\n.herbar-wrapper .solvers-empty {\n  font-style: italic;\n  font-size: 12px;\n  color: rgba(122,88,40,.55);\n  text-align: center;\n  padding: .5rem 0;\n}\n\n\/* FORMUL\u00c1\u0158 *\/\n.herbar-wrapper .solver-form {\n  margin-top: 1rem;\n  padding-top: 1rem;\n  border-top: 1px dashed rgba(122,88,40,.35);\n  text-align: left;\n}\n.herbar-wrapper .solver-form-title {\n  font-family: Georgia, serif;\n  font-size: 11px;\n  letter-spacing: 3px;\n  color: var(--ink-light);\n  text-transform: uppercase;\n  text-align: center;\n  margin-bottom: .7rem;\n}\n.herbar-wrapper .solver-form-row {\n  display: flex;\n  gap: 8px;\n  margin-bottom: 8px;\n  flex-wrap: wrap;\n}\n.herbar-wrapper .solver-form-row input {\n  flex: 1;\n  min-width: 90px;\n  border: 1px solid rgba(122,88,40,.5);\n  background: rgba(255,253,245,.65);\n  padding: .45rem .6rem;\n  font-family: Georgia, serif;\n  font-size: 12.5px;\n  color: var(--ink);\n  outline: none;\n  border-radius: 2px;\n}\n.herbar-wrapper .solver-form-row input:focus { border-color: var(--ink-mid); }\n.herbar-wrapper .solver-submit-btn {\n  display: block;\n  width: 100%;\n  font-family: Georgia, serif;\n  font-size: 11.5px;\n  letter-spacing: 2px;\n  background: var(--ink);\n  color: var(--parch);\n  border: none;\n  padding: .55rem;\n  cursor: pointer;\n  text-transform: uppercase;\n  transition: background .2s;\n}\n.herbar-wrapper .solver-submit-btn:hover { background: #1a0f02; }\n.herbar-wrapper .solver-form-msg {\n  font-family: Georgia, serif;\n  font-style: italic;\n  font-size: 11.5px;\n  text-align: center;\n  margin-top: .5rem;\n  min-height: 16px;\n  color: var(--ink-light);\n}\n.herbar-wrapper .solver-form-msg.err { color: var(--red-err); }\n.herbar-wrapper .solver-form-msg.win { color: var(--green-ok); }\n<\/style>\n\n<div class=\"herbar-wrapper\">\n  <div class=\"page\">\n    <div class=\"lines-bg\"><\/div>\n    <div class=\"stain s1\"><\/div>\n    <div class=\"stain s2\"><\/div>\n    <div class=\"stain s3\"><\/div>\n\n    <!-- kaprad\u00ed SVG -->\n    <svg class=\"fern fern-tl\" viewBox=\"0 0 120 160\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n      <line x1=\"60\" y1=\"155\" x2=\"60\" y2=\"5\" stroke=\"#5a3a10\" stroke-width=\"1.8\"\/>\n      <path d=\"M60 130 C50 115 30 110 12 95\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 130 C70 115 90 110 108 95\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 105 C48 92 28 88 10 75\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 105 C72 92 92 88 110 75\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 80 C50 68 32 65 16 52\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 80 C70 68 88 65 104 52\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 58 C52 47 38 44 24 34\" stroke=\"#5a3a10\" stroke-width=\".8\" fill=\"none\"\/>\n      <path d=\"M60 58 C68 47 82 44 96 34\" stroke=\"#5a3a10\" stroke-width=\".8\" fill=\"none\"\/>\n      <path d=\"M60 38 C54 30 44 27 34 20\" stroke=\"#5a3a10\" stroke-width=\".6\" fill=\"none\"\/>\n      <path d=\"M60 38 C66 30 76 27 86 20\" stroke=\"#5a3a10\" stroke-width=\".6\" fill=\"none\"\/>\n    <\/svg>\n\n    <svg class=\"fern fern-br\" viewBox=\"0 0 120 160\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n      <line x1=\"60\" y1=\"155\" x2=\"60\" y2=\"5\" stroke=\"#5a3a10\" stroke-width=\"1.8\"\/>\n      <path d=\"M60 130 C50 115 30 110 12 95\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 130 C70 115 90 110 108 95\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 105 C48 92 28 88 10 75\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 105 C72 92 92 88 110 75\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 80 C50 68 32 65 16 52\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 80 C70 68 88 65 104 52\" stroke=\"#5a3a10\" stroke-width=\"1\" fill=\"none\"\/>\n      <path d=\"M60 58 C52 47 38 44 24 34\" stroke=\"#5a3a10\" stroke-width=\".8\" fill=\"none\"\/>\n      <path d=\"M60 58 C68 47 82 44 96 34\" stroke=\"#5a3a10\" stroke-width=\".8\" fill=\"none\"\/>\n    <\/svg>\n\n    <div id=\"mainPage\">\n      <div class=\"title-block\">\n        <div class=\"title-small\" id=\"v-sub\">Rukopis mistra Brikcia z K\u0159ivokl\u00e1tsk\u00fdch les\u016f<\/div>\n        <div class=\"title-main\" id=\"v-title\">Herbarium mysticum<\/div>\n        <div class=\"title-sub\" id=\"v-badge\">P\u0159\u00edsn\u011b tajn\u00e9<\/div>\n      <\/div>\n\n      <div class=\"divider\">\n        <div class=\"divider-line\"><\/div>\n        <div class=\"divider-orn\">\u2726 \u2767 \u2726<\/div>\n        <div class=\"divider-line\"><\/div>\n      <\/div>\n\n      <p class=\"keys-label\" id=\"v-keylabel\">\u2014 Dev\u011bt kl\u00ed\u010d\u016f \u2014<\/p>\n\n      <div class=\"keys-grid\">\n        <div class=\"key-slot\">\n          <label id=\"vl0\">Prot\u011b\u017e alpsk\u00e1<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k0\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl1\">R\u016f\u017ee stolist\u00e1<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k1\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl2\">\u010cekanka<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k2\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl3\">Jitrocel kopinat\u00fd<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k3\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl4\">Kopretina<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k4\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl5\">Vl\u010d\u00ed m\u00e1k<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k5\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl6\">Mate\u0159\u00eddou\u0161ka<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k6\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl7\">Koniklec lu\u010dn\u00ed<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k7\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n        <div class=\"key-slot\">\n          <label id=\"vl8\">Kapra\u010f samec<\/label>\n          <div class=\"key-wrap\"><span class=\"key-glyph\">\u16ed<\/span><input type=\"text\" id=\"k8\" placeholder=\"kl\u00ed\u010d...\" autocomplete=\"off\"><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"progress-dots\">\n        <div class=\"pdot\" id=\"d0\"><\/div><div class=\"pdot\" id=\"d1\"><\/div><div class=\"pdot\" id=\"d2\"><\/div>\n        <div class=\"pdot\" id=\"d3\"><\/div><div class=\"pdot\" id=\"d4\"><\/div><div class=\"pdot\" id=\"d5\"><\/div>\n        <div class=\"pdot\" id=\"d6\"><\/div><div class=\"pdot\" id=\"d7\"><\/div><div class=\"pdot\" id=\"d8\"><\/div>\n      <\/div>\n\n      <button class=\"seal-btn\" id=\"v-btn\" onclick=\"checkAll()\">Otev\u0159\u00edt br\u00e1nu ke \u0161t\u011bst\u00ed<\/button>\n      <div class=\"hstatus\" id=\"statusMsg\"><\/div>\n\n      <div class=\"divider\" style=\"margin-top:1.1rem;\">\n        <div class=\"divider-line\"><\/div>\n        <div class=\"divider-orn\">\u2767<\/div>\n        <div class=\"divider-line\"><\/div>\n      <\/div>\n      <p class=\"footer-note\" id=\"v-footer\">Ps\u00e1no perem krkav\u010d\u00edm \u00b7 Rok nezn\u00e1m\u00fd \u00b7 K\u0159ivokl\u00e1tsk\u00e9 lesy<\/p>\n\n      <!-- KNIHA \u00daSP\u011a\u0160N\u00ddCH -->\n      <div class=\"solvers-box\">\n        <div class=\"solvers-box-title\">\u2726 Kniha \u00fasp\u011b\u0161n\u00fdch \u0159e\u0161itel\u016f \u2726<\/div>\n        <ul class=\"solvers-list\" id=\"solversListMain\"><li class=\"solvers-empty\">Na\u010d\u00edt\u00e1m online seznam\u2026<\/li><\/ul>\n      <\/div>\n    <\/div>\n\n    <!-- STR\u00c1NKA PO \u00daSP\u011aCHU -->\n    <div class=\"success-wrap\" id=\"successPage\">\n      <div class=\"success-cap\">Br\u00e1na otev\u0159ena<\/div>\n\n      <svg class=\"gate-svg\" width=\"190\" height=\"125\" viewBox=\"0 0 190 125\">\n        <rect x=\"5\" y=\"5\" width=\"180\" height=\"115\" rx=\"2\" fill=\"#dccfa0\" stroke=\"#7a5828\" stroke-width=\"1\"\/>\n        <path d=\"M60 120 L60 55 Q95 20 130 55 L130 120\" fill=\"#c8b87a\" stroke=\"#7a5828\" stroke-width=\"1.2\"\/>\n        <circle cx=\"95\" cy=\"58\" r=\"4\" fill=\"#7a5828\" opacity=\".6\"\/>\n        <line x1=\"95\" y1=\"62\" x2=\"95\" y2=\"120\" stroke=\"#7a5828\" stroke-width=\".6\" stroke-dasharray=\"4,3\"\/>\n        <ellipse cx=\"28\" cy=\"28\" rx=\"7\" ry=\"10\" fill=\"#4a7a28\" opacity=\".55\" transform=\"rotate(-10,28,28)\"\/>\n        <ellipse cx=\"162\" cy=\"34\" rx=\"6\" ry=\"9\" fill=\"#4a7a28\" opacity=\".55\" transform=\"rotate(8,162,34)\"\/>\n        <path d=\"M12 98 Q24 86 36 94 Q48 80 60 90\" fill=\"none\" stroke=\"#3a6a18\" stroke-width=\"1\" opacity=\".5\"\/>\n        <path d=\"M128 100 Q140 88 152 96 Q164 82 178 92\" fill=\"none\" stroke=\"#3a6a18\" stroke-width=\"1\" opacity=\".5\"\/>\n      <\/svg>\n\n      <p class=\"success-verse\" id=\"v-verse\">\u0160t\u011bst\u00ed nen\u00ed schovan\u00e9 na konci dlouh\u00e9 cesty jako poklad na map\u011b. Nen\u00ed to v\u011bc, kterou si koup\u00edme, ani m\u00edsto, kam mus\u00edme doj\u00edt. \u0160t\u011bst\u00ed nen\u00ed vzd\u00e1len\u00fd ostrov, ke kter\u00e9mu mus\u00edme slo\u017eit\u011b plout, ani c\u00edl, kde se jednou zastav\u00edme a \u0159ekneme si: \u201eTak, a te\u010f u\u017e jsem \u0161\u0165astn\u00fd.&#8221;<\/p>\n\n      <div class=\"reward-parchment\">\n        <div class=\"reward-cap\">\u2726 Tajn\u00e1 zpr\u00e1va mistra Brikcia \u2726<\/div>\n        <div class=\"reward-text\" id=\"v-reward\">\u0160t\u011bst\u00ed je zp\u016fsob, jak\u00fdm se d\u00edv\u00e1me na sv\u011bt.\n\u0160t\u011bst\u00ed je zp\u016fsob, jak\u00fdm mluv\u00edme s ostatn\u00edmi a jak se chov\u00e1me k ostatn\u00edm.\n\u0160t\u011bst\u00ed je zp\u016fsob, jak\u00fdm pro\u017e\u00edv\u00e1me oby\u010dejn\u00e9 v\u011bci.<\/div>\n      <\/div>\n\n      <!-- FORMUL\u00c1\u0158 PRO Z\u00c1PIS -->\n      <div class=\"solver-form\">\n        <div class=\"solver-form-title\">\u2726 Zapi\u0161 se do Knihy \u00fasp\u011b\u0161n\u00fdch \u2726<\/div>\n        <div class=\"solver-form-row\">\n          <input type=\"text\" id=\"solverName\" placeholder=\"Jm\u00e9no\" autocomplete=\"off\">\n          <input type=\"number\" id=\"solverAge\" placeholder=\"V\u011bk\" min=\"1\" max=\"120\" autocomplete=\"off\">\n          <input type=\"text\" id=\"solverCity\" placeholder=\"M\u011bsto\" autocomplete=\"off\">\n        <\/div>\n        <button class=\"solver-submit-btn\" id=\"submitBtn\" onclick=\"submitSolver()\">Zapsat se do knihy<\/button>\n        <div class=\"solver-form-msg\" id=\"solverFormMsg\"><\/div>\n      <\/div>\n\n      <button class=\"back-btn\" onclick=\"resetAll()\">\u2190 Zp\u011bt do herb\u00e1\u0159e<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function() {\n  const KEYS = [\"odvaha\",\"l\u00e1ska\",\"trp\u011blivost\",\"pomoc\",\"ochrana\",\"radost\",\"klid\",\"skromnost\",\"tajemstv\u00ed\"];\n\n  \/* VA\u0160E ONLINE \u00daLO\u017dI\u0160T\u011a (jsonblob.com) *\/\n  const API_URL = \"https:\/\/jsonblob.com\/api\/jsonBlob\/019f84ce-da52-70ae-be2c-d6ad17cb1ff9\";\n\n  function norm(s) {\n    return s.trim().toLowerCase()\n      .replace(\/\u00e1\/g,\"a\").replace(\/\u00e9\/g,\"e\").replace(\/\u00ed\/g,\"i\").replace(\/\u00f3\/g,\"o\")\n      .replace(\/\u00fa|\u016f\/g,\"u\").replace(\/\u011b\/g,\"e\").replace(\/\u0161\/g,\"s\").replace(\/\u010d\/g,\"c\")\n      .replace(\/\u0159\/g,\"r\").replace(\/\u017e\/g,\"z\").replace(\/\u00fd\/g,\"y\").replace(\/\u0148\/g,\"n\")\n      .replace(\/\u010f\/g,\"d\").replace(\/\u0165\/g,\"t\");\n  }\n\n  const inputs = Array.from({length:9}, (_,i) => document.getElementById('k'+i));\n\n  inputs.forEach((inp, i) => {\n    if (!inp) return;\n    inp.addEventListener('input', () => {\n      const v = norm(inp.value), c = norm(KEYS[i]);\n      if (!inp.value.trim()) {\n        inp.className = '';\n        document.getElementById('d'+i).classList.remove('lit');\n      } else if (v === c) {\n        inp.className = 'ok';\n        document.getElementById('d'+i).classList.add('lit');\n      } else {\n        inp.className = 'bad';\n        document.getElementById('d'+i).classList.remove('lit');\n      }\n      updateStatus();\n    });\n    inp.addEventListener('keydown', e => { if (e.key === 'Enter') checkAll(); });\n  });\n\n  function countOk() {\n    return inputs.filter((inp, i) => inp && norm(inp.value) === norm(KEYS[i])).length;\n  }\n\n  function updateStatus() {\n    const c = countOk(), m = document.getElementById('statusMsg');\n    if (!m) return;\n    if (c === 0) { m.textContent = ''; m.className = 'hstatus'; }\n    else if (c < 5) { m.textContent = `${c} z 9 kl\u00ed\u010d\u016f rozkvetlo\u2026`; m.className = 'hstatus'; }\n    else if (c < 9) { m.textContent = `${c} z 9 kl\u00ed\u010d\u016f zn\u00ed spr\u00e1vn\u011b \u2014 pokra\u010duj!`; m.className = 'hstatus'; }\n    else { m.textContent = 'V\u0161ech dev\u011bt kl\u00ed\u010d\u016f zn\u00ed! Br\u00e1na se otv\u00edr\u00e1.'; m.className = 'hstatus win'; }\n  }\n\n  window.checkAll = function() {\n    const c = countOk();\n    if (c < 9) {\n      const m = document.getElementById('statusMsg');\n      if (m) {\n        m.textContent = `Je\u0161t\u011b ${9-c} kl\u00ed\u010d\u016f nesed\u00ed \u2014 zkontroluj z\u00e1pisy.`;\n        m.className = 'hstatus err';\n      }\n      return;\n    }\n    document.getElementById('mainPage').style.display = 'none';\n    document.getElementById('successPage').style.display = 'block';\n  };\n\n  window.resetAll = function() {\n    inputs.forEach((inp, i) => {\n      if (inp) {\n        inp.value = ''; \n        inp.className = '';\n      }\n      const dot = document.getElementById('d'+i);\n      if (dot) dot.classList.remove('lit');\n    });\n    const m = document.getElementById('statusMsg');\n    if (m) {\n      m.textContent = '';\n      m.className = 'hstatus';\n    }\n    document.getElementById('mainPage').style.display = 'block';\n    document.getElementById('successPage').style.display = 'none';\n  };\n\n  \/* ---- ONLINE KNIHA \u00daSP\u011a\u0160N\u00ddCH \u0158E\u0160ITEL\u016e ---- *\/\n\n  function escapeHtml(s) {\n    const d = document.createElement('div');\n    d.textContent = s;\n    return d.innerHTML;\n  }\n\n  function renderSolversList(list) {\n    const el = document.getElementById('solversListMain');\n    if (!el) return;\n    if (!Array.isArray(list) || list.length === 0) {\n      el.innerHTML = '<li class=\"solvers-empty\">Zat\u00edm se do knihy nikdo nezapsal\u2026<\/li>';\n      return;\n    }\n    el.innerHTML = list.slice().reverse().map(e =>\n      `<li><span class=\"solvers-name\">${escapeHtml(e.name)}<\/span><span class=\"solvers-meta\">${escapeHtml(String(e.age))} let \u00b7 ${escapeHtml(e.city)}<\/span><\/li>`\n    ).join('');\n  }\n\n  async function fetchOnlineSolvers() {\n    try {\n      const res = await fetch(API_URL);\n      if (!res.ok) throw new Error();\n      const data = await res.json();\n      return Array.isArray(data) ? data : [];\n    } catch (e) {\n      return [];\n    }\n  }\n\n  async function loadSolvers() {\n    const list = await fetchOnlineSolvers();\n    renderSolversList(list);\n  }\n\n  window.submitSolver = async function() {\n    const name = document.getElementById('solverName').value.trim();\n    const age = document.getElementById('solverAge').value.trim();\n    const city = document.getElementById('solverCity').value.trim();\n    const msg = document.getElementById('solverFormMsg');\n    const btn = document.getElementById('submitBtn');\n\n    if (!name || !age || !city) {\n      msg.textContent = 'Vypl\u0148 pros\u00edm jm\u00e9no, v\u011bk i m\u011bsto.';\n      msg.className = 'solver-form-msg err';\n      return;\n    }\n\n    msg.textContent = 'Zapisuji do knihy\u2026';\n    msg.className = 'solver-form-msg';\n    if (btn) btn.disabled = true;\n\n    try {\n      let currentList = await fetchOnlineSolvers();\n      currentList.push({ name, age, city, date: new Date().toISOString() });\n\n      const updateRes = await fetch(API_URL, {\n        method: \"PUT\",\n        headers: { \"Content-Type\": \"application\/json\" },\n        body: JSON.stringify(currentList)\n      });\n\n      if (!updateRes.ok) throw new Error();\n\n      renderSolversList(currentList);\n      document.getElementById('solverName').value = '';\n      document.getElementById('solverAge').value = '';\n      document.getElementById('solverCity').value = '';\n      msg.textContent = '\u2713 Zaps\u00e1no do spole\u010dn\u00e9 Knihy \u00fasp\u011b\u0161n\u00fdch!';\n      msg.className = 'solver-form-msg win';\n    } catch (e) {\n      msg.textContent = 'Odesl\u00e1n\u00ed se nezda\u0159ilo, zkus to pros\u00edm znovu.';\n      msg.className = 'solver-form-msg err';\n    } finally {\n      if (btn) btn.disabled = false;\n    }\n  };\n\n  loadSolvers();\n})();\n<\/script>\n\n\n\n<figure class=\"wp-block-embed cc-hide-on-mobile cc-hide-on-tablet cc-hide-on-desktop\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/jsonblob.com\/019f84ce-da52-70ae-be2c-d6ad17cb1ff9\/json#google_vignette\n<\/div><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Rukopis mistra Brikcia z K\u0159ivokl\u00e1tsk\u00fdch les\u016f Herbarium mysticum P\u0159\u00edsn\u011b tajn\u00e9 \u2726 \u2767 \u2726 \u2014 Dev\u011bt kl\u00ed\u010d\u016f \u2014 Prot\u011b\u017e alpsk\u00e1 \u16ed R\u016f\u017ee stolist\u00e1 \u16ed \u010cekanka \u16ed &hellip; <\/p>\n","protected":false},"author":6,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","order-bump-settings":[],"_wpfnl_thankyou_order_overview":"on","_wpfnl_thankyou_order_details":"on","_wpfnl_thankyou_billing_details":"on","_wpfnl_thankyou_shipping_details":"on","footnotes":""},"class_list":["post-4562","page","type-page","status-publish","hentry"],"featured_image_src":"","featured_image_src_square":false,"rbea_author_info":{"display_name":"Zuzana \u010cuhani\u010dov\u00e1","author_link":"https:\/\/melodiedomova.cz\/?author=6"},"rbea_excerpt_info":"Rukopis mistra Brikcia z K\u0159ivokl\u00e1tsk\u00fdch les\u016f Herbarium mysticum P\u0159\u00edsn\u011b tajn\u00e9 \u2726 \u2767 \u2726 \u2014 Dev\u011bt kl\u00ed\u010d\u016f \u2014 Prot\u011b\u017e alpsk\u00e1 \u16ed R\u016f\u017ee stolist\u00e1 \u16ed \u010cekanka \u16ed &hellip; ","uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"post-slider-thumb-size":false,"post-category-slider-size":false,"1536x1536":false,"2048x2048":false,"vilva-slider-one":false,"vilva-featured-four":false,"vilva-blog":false,"vilva-blog-one":false,"vilva-sidebar":false,"mailpoet_newsletter_max":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false},"uagb_author_info":{"display_name":"Zuzana \u010cuhani\u010dov\u00e1","author_link":"https:\/\/melodiedomova.cz\/?author=6"},"uagb_comment_info":0,"uagb_excerpt":"Rukopis mistra Brikcia z K\u0159ivokl\u00e1tsk\u00fdch les\u016f Herbarium mysticum P\u0159\u00edsn\u011b tajn\u00e9 \u2726 \u2767 \u2726 \u2014 Dev\u011bt kl\u00ed\u010d\u016f \u2014 Prot\u011b\u017e alpsk\u00e1 \u16ed R\u016f\u017ee stolist\u00e1 \u16ed \u010cekanka \u16ed &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/pages\/4562","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4562"}],"version-history":[{"count":14,"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/pages\/4562\/revisions"}],"predecessor-version":[{"id":4684,"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=\/wp\/v2\/pages\/4562\/revisions\/4684"}],"wp:attachment":[{"href":"https:\/\/melodiedomova.cz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4562"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}