{"id":35583,"date":"2026-08-20T17:59:20","date_gmt":"2026-08-20T15:59:20","guid":{"rendered":"https:\/\/strate9y.com\/?page_id=35583"},"modified":"2026-09-01T15:20:42","modified_gmt":"2026-09-01T13:20:42","slug":"porterov-hodnotovy-retazec","status":"publish","type":"page","link":"https:\/\/strate9y.com\/sk\/strategicke-nastroje\/porterov-hodnotovy-retazec\/","title":{"rendered":"Porterov re\u0165azec tvorby hodnoty \u2013 interakt\u00edvny n\u00e1stroj"},"content":{"rendered":"\n<style data-wp-block-html=\"css\">\n\/* MOBIL \u2013 posun cel\u00e9 landing page n\u00ed\u017e pod hlavi\u010dku *\/\n\n@media (max-width: 767px) {\n\n  #primary .entry-content {\n\n    padding-top: 45px !important;\n\n    background-color: #050505 !important;\n\n  }\n\n}\n<\/style>\n\n<!-- =========================================================\nSTRATE9Y\u00ae N\u00c1STROJ\nPORTEROV HODNOTOV\u00dd RE\u0164AZEC\nSlovensk\u00e1 verzia \/ WordPress HTML blok\n========================================================= -->\n\n<style>\n.str9-chain,\n.str9-chain *{\n  box-sizing:border-box;\n  font-family:\"Manrope\",system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif!important\n}\n\n.str9-chain{\n  --black:#080808;\n  --red:#E8080F;\n  --red-dim:rgba(232,8,15,.08);\n  --red-border:rgba(232,8,15,.25);\n  --bg:#F7F7F7;\n  --surface:#fff;\n  --border:#E8E8E8;\n  --text:#111;\n  --muted:#777;\n  --light:#bbb;\n  --green:#15803d;\n  --green-dim:rgba(21,128,61,.10);\n  --orange:#d97706;\n  --orange-dim:rgba(217,119,6,.10);\n  background:var(--bg);\n  color:var(--text);\n  font-size:14px;\n  line-height:1.5;\n  width:100%;\n  overflow-x:hidden\n}\n\n.str9-chain a{text-decoration:none}\n.str9-chain button{font-family:inherit}\n.str9-chain-wrap{max-width:1180px;margin:0 auto}\n\n\/* HERO *\/\n.str9-chain-hero{\n  background:\n    radial-gradient(circle at 78% 38%,rgba(232,8,15,.30),transparent 30%),\n    linear-gradient(135deg,#050505 0%,#101014 52%,#050505 100%);\n  color:#fff;\n  padding:clamp(76px,8vw,120px) 24px\n}\n\n.str9-chain-kicker{\n  color:var(--red);\n  font-weight:900;\n  text-transform:uppercase;\n  letter-spacing:.08em;\n  font-size:13px;\n  margin-bottom:16px\n}\n\n.str9-chain-hero h1{\n  max-width:930px;\n  font-size:clamp(40px,5.5vw,72px);\n  line-height:.98;\n  margin:0 0 22px;\n  letter-spacing:-.06em;\n  font-weight:900;\n  color:#fff!important\n}\n\n.str9-chain-hero h1 span{color:var(--red)!important}\n\n.str9-chain-hero p{\n  max-width:780px;\n  font-size:clamp(18px,2vw,22px);\n  line-height:1.55;\n  color:rgba(255,255,255,.82)!important;\n  margin:0 0 32px\n}\n\n.str9-chain-actions{\n  display:flex;\n  gap:14px;\n  flex-wrap:wrap\n}\n\n.str9-chain-btn{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  background:var(--red);\n  color:#fff!important;\n  padding:15px 24px;\n  border-radius:12px;\n  font-weight:900;\n  box-shadow:0 16px 38px rgba(232,8,15,.28);\n  border:0;\n  cursor:pointer;\n  transition:.2s ease\n}\n\n.str9-chain-btn:hover{transform:translateY(-1px)}\n\n.str9-chain-btn.secondary{\n  background:rgba(255,255,255,.10);\n  box-shadow:none;\n  border:1px solid rgba(255,255,255,.18)\n}\n\n\/* SECTIONS *\/\n.str9-chain-section{\n  padding:clamp(58px,7vw,88px) 24px;\n  background:#fff\n}\n\n.str9-chain-section.soft{background:#f6f6f4}\n\n.str9-chain-title{\n  max-width:820px;\n  margin:0 auto 34px;\n  text-align:center\n}\n\n.str9-chain-title h2{\n  font-size:clamp(30px,4vw,48px);\n  line-height:1.08;\n  letter-spacing:-.05em;\n  margin:0 0 14px;\n  font-weight:900\n}\n\n.str9-chain-title p{\n  color:var(--muted);\n  font-size:17px;\n  line-height:1.65;\n  margin:0\n}\n\n.str9-chain-two{\n  display:grid;\n  grid-template-columns:1fr 1fr;\n  gap:28px\n}\n\n.str9-chain-card{\n  background:#fff;\n  border:1px solid rgba(0,0,0,.09);\n  border-radius:24px;\n  padding:30px;\n  box-shadow:0 16px 42px rgba(0,0,0,.045)\n}\n\n.str9-chain-card h3{\n  font-size:24px;\n  line-height:1.15;\n  letter-spacing:-.04em;\n  margin:0 0 14px;\n  font-weight:900\n}\n\n.str9-chain-card p,\n.str9-chain-card li{\n  color:var(--muted);\n  font-size:15px;\n  line-height:1.65\n}\n\n.str9-chain-card p{margin:0}\n.str9-chain-card ul{padding-left:20px;margin:12px 0 0}\n\n.str9-chain-link{\n  color:var(--red)!important;\n  font-weight:900\n}\n\n\/* HOW *\/\n.str9-chain-how{\n  display:grid;\n  grid-template-columns:repeat(4,1fr);\n  gap:18px\n}\n\n.str9-chain-how-card{\n  background:#fff;\n  border:1px solid rgba(0,0,0,.09);\n  border-radius:22px;\n  padding:24px;\n  box-shadow:0 14px 36px rgba(0,0,0,.04)\n}\n\n.str9-chain-num{\n  width:42px;\n  height:42px;\n  border-radius:50%;\n  display:grid;\n  place-items:center;\n  background:var(--red);\n  color:#fff;\n  font-weight:900;\n  margin-bottom:14px\n}\n\n.str9-chain-how-card strong{\n  display:block;\n  font-size:17px;\n  margin-bottom:8px\n}\n\n.str9-chain-how-card p{\n  color:var(--muted);\n  font-size:14px;\n  line-height:1.55;\n  margin:0\n}\n\n\/* APP INTRO *\/\n.str9-chain-app-intro{\n  background:#080808;\n  color:#fff;\n  padding:34px 24px;\n  text-align:center\n}\n\n.str9-chain-app-intro h2{\n  font-size:clamp(28px,4vw,44px);\n  letter-spacing:-.05em;\n  font-weight:900;\n  margin:0 0 10px;\n  color:#fff!important\n}\n\n.str9-chain-app-intro p{\n  color:rgba(255,255,255,.72)!important;\n  font-size:16px;\n  margin:0\n}\n\n\/* TOPBAR *\/\n.str9-chain-topbar{\n  background:var(--black);\n  padding:14px 32px;\n  display:flex;\n  align-items:center;\n  justify-content:space-between;\n  position:sticky;\n  top:0;\n  z-index:20\n}\n\n.str9-chain-top-left{\n  display:flex;\n  align-items:center;\n  gap:20px\n}\n\n.str9-chain-back{\n  color:#888!important;\n  font-size:13px;\n  font-weight:700\n}\n\n.str9-chain-back:hover{color:#fff!important}\n\n.str9-chain-top-title{\n  color:#fff;\n  font-size:14px;\n  font-weight:800\n}\n\n.str9-chain-top-title span{color:var(--red)}\n\n.str9-chain-top-right{\n  display:flex;\n  align-items:center;\n  gap:12px\n}\n\n.str9-chain-progress-wrap{\n  width:140px;\n  height:4px;\n  background:#2A2A2A;\n  border-radius:2px;\n  overflow:hidden\n}\n\n.str9-chain-progress{\n  height:100%;\n  background:var(--red);\n  width:0%;\n  transition:.3s\n}\n\n.str9-chain-progress-text{\n  color:#888;\n  font-size:12px;\n  font-weight:700;\n  min-width:52px;\n  text-align:right\n}\n\n.str9-chain-export{\n  background:var(--red);\n  color:#fff;\n  border:0;\n  padding:9px 18px;\n  border-radius:6px;\n  font-size:13px;\n  font-weight:800;\n  cursor:pointer\n}\n\n.str9-chain-export:disabled{\n  opacity:.4;\n  cursor:not-allowed\n}\n\n\/* APP *\/\n.str9-chain-app{\n  display:grid;\n  grid-template-columns:430px minmax(0,1fr);\n  min-height:820px\n}\n\n.str9-chain-sidebar{\n  background:#fff;\n  border-right:1px solid var(--border);\n  min-height:820px\n}\n\n.str9-chain-side-head{\n  padding:28px 28px 20px;\n  border-bottom:1px solid var(--border)\n}\n\n.str9-chain-badge{\n  display:inline-flex;\n  align-items:center;\n  gap:6px;\n  background:rgba(232,8,15,.1);\n  border:1px solid var(--red-border);\n  border-radius:100px;\n  padding:3px 10px;\n  font-size:11px;\n  font-weight:800;\n  color:var(--red);\n  margin-bottom:10px\n}\n\n.str9-chain-side-head h2{\n  font-size:20px;\n  font-weight:900;\n  letter-spacing:-.5px;\n  margin:0 0 6px\n}\n\n.str9-chain-side-head p{\n  color:var(--muted);\n  font-size:13px;\n  line-height:1.5;\n  margin:0\n}\n\n\/* STEPS *\/\n.str9-chain-steps{\n  padding:16px 20px;\n  border-bottom:1px solid var(--border);\n  display:flex;\n  gap:6px;\n  flex-wrap:wrap\n}\n\n.str9-chain-dot{\n  min-width:34px;\n  height:34px;\n  border-radius:100px;\n  border:2px solid var(--border);\n  background:transparent;\n  font-size:11px;\n  font-weight:900;\n  color:var(--light);\n  cursor:pointer;\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  padding:0 9px\n}\n\n.str9-chain-dot.done{\n  background:var(--red);\n  border-color:var(--red);\n  color:#fff\n}\n\n.str9-chain-dot.active{\n  border-color:var(--red);\n  color:var(--red);\n  background:#fff\n}\n\n\/* PANEL *\/\n.str9-chain-panel{padding:28px}\n\n.str9-chain-q-eyebrow{\n  font-size:10px;\n  font-weight:900;\n  letter-spacing:2px;\n  text-transform:uppercase;\n  color:var(--red);\n  margin-bottom:8px\n}\n\n.str9-chain-q-title{\n  font-size:18px;\n  font-weight:900;\n  letter-spacing:-.5px;\n  margin-bottom:8px;\n  line-height:1.3\n}\n\n.str9-chain-q-desc{\n  color:var(--muted);\n  font-size:13px;\n  margin-bottom:18px;\n  line-height:1.6\n}\n\n.str9-chain-q-hint{\n  background:var(--red-dim);\n  border-left:3px solid var(--red);\n  padding:12px 14px;\n  border-radius:0 6px 6px 0;\n  font-size:12px;\n  color:#444;\n  margin-bottom:18px;\n  line-height:1.6\n}\n\n.str9-chain-q-hint strong{\n  color:var(--red);\n  font-weight:800\n}\n\n.str9-chain-factor-list{\n  display:flex;\n  flex-direction:column;\n  gap:12px\n}\n\n.str9-chain-factor{\n  background:#fff;\n  border:1px solid var(--border);\n  border-left:5px solid var(--red);\n  border-radius:14px;\n  padding:16px;\n  box-shadow:0 8px 22px rgba(0,0,0,.035)\n}\n\n.str9-chain-factor-head{\n  display:flex;\n  justify-content:space-between;\n  gap:12px;\n  align-items:flex-start;\n  margin-bottom:13px\n}\n\n.str9-chain-factor-name{\n  font-size:14px;\n  font-weight:900;\n  line-height:1.35\n}\n\n.str9-chain-role{\n  border-radius:100px;\n  padding:5px 10px;\n  font-size:10px;\n  font-weight:900;\n  white-space:nowrap\n}\n\n.str9-chain-role.diff{\n  background:var(--green-dim);\n  color:var(--green);\n  border:1px solid rgba(21,128,61,.25)\n}\n\n.str9-chain-role.key{\n  background:var(--orange-dim);\n  color:var(--orange);\n  border:1px solid rgba(217,119,6,.25)\n}\n\n.str9-chain-role.waste{\n  background:var(--red-dim);\n  color:var(--red);\n  border:1px solid var(--red-border)\n}\n\n.str9-chain-role.std{\n  background:#f1f1f1;\n  color:#666;\n  border:1px solid var(--border)\n}\n\n.str9-chain-score-grid{\n  display:grid;\n  grid-template-columns:1fr;\n  gap:12px\n}\n\n.str9-chain-score{\n  background:#f7f7f7;\n  border:1px solid var(--border);\n  border-radius:12px;\n  padding:14px\n}\n\n.str9-chain-score-head{\n  display:flex;\n  justify-content:space-between;\n  align-items:center;\n  margin-bottom:7px\n}\n\n.str9-chain-score-head strong{\n  font-size:13px;\n  color:#111;\n  font-weight:900\n}\n\n.str9-chain-score-head span{\n  font-size:20px;\n  line-height:1;\n  font-weight:900;\n  color:var(--red)\n}\n\n.str9-chain-help{\n  font-size:11px;\n  color:var(--muted);\n  margin-bottom:9px\n}\n\n.str9-chain-rating{\n  display:grid;\n  grid-template-columns:repeat(5,1fr);\n  gap:5px\n}\n\n.str9-chain-rate{\n  height:34px;\n  border:1px solid var(--border);\n  border-radius:8px;\n  background:#fff;\n  color:var(--muted);\n  font-size:12px;\n  font-weight:900;\n  cursor:pointer\n}\n\n.str9-chain-rate.selected{\n  background:var(--red);\n  border-color:var(--red);\n  color:#fff\n}\n\n.str9-chain-nav{\n  display:flex;\n  gap:10px;\n  margin-top:24px\n}\n\n.str9-chain-prev,\n.str9-chain-next{\n  flex:1;\n  padding:12px;\n  border-radius:8px;\n  font-size:14px;\n  font-weight:800;\n  cursor:pointer;\n  border:2px solid\n}\n\n.str9-chain-prev{\n  background:transparent;\n  border-color:var(--border);\n  color:var(--muted)\n}\n\n.str9-chain-prev:disabled{\n  opacity:.4;\n  cursor:not-allowed\n}\n\n.str9-chain-next{\n  background:var(--red);\n  border-color:var(--red);\n  color:#fff\n}\n\n\/* RESULTS *\/\n.str9-chain-results{\n  padding:28px;\n  overflow-y:auto\n}\n\n.str9-chain-results-title{\n  display:flex;\n  align-items:center;\n  justify-content:space-between;\n  gap:16px;\n  margin-bottom:18px\n}\n\n.str9-chain-results-title h3{\n  font-size:13px;\n  font-weight:800;\n  color:var(--muted);\n  letter-spacing:.5px;\n  text-transform:uppercase;\n  margin:0\n}\n\n.str9-chain-fill-hint{\n  font-size:12px;\n  color:var(--light)\n}\n\n\/* SUMMARY *\/\n.str9-chain-summary{\n  background:#080808;\n  color:#fff;\n  border-radius:18px;\n  padding:26px;\n  margin-bottom:20px\n}\n\n.str9-chain-summary-title{\n  color:rgba(255,255,255,.45);\n  font-size:12px;\n  font-weight:900;\n  text-transform:uppercase;\n  letter-spacing:.08em;\n  margin-bottom:16px\n}\n\n.str9-chain-kpi-grid{\n  display:grid;\n  grid-template-columns:repeat(4,1fr);\n  gap:12px;\n  margin-bottom:18px\n}\n\n.str9-chain-kpi{\n  background:rgba(255,255,255,.06);\n  border-radius:12px;\n  padding:16px 12px;\n  text-align:center\n}\n\n.str9-chain-kpi-num{\n  font-size:34px;\n  font-weight:900;\n  line-height:1;\n  color:var(--red);\n  margin-bottom:6px\n}\n\n.str9-chain-kpi-label{\n  font-size:10px;\n  font-weight:900;\n  color:rgba(255,255,255,.45);\n  text-transform:uppercase;\n  letter-spacing:.05em\n}\n\n.str9-chain-diagnosis{\n  background:rgba(255,255,255,.045);\n  border-left:3px solid var(--red);\n  border-radius:10px;\n  padding:16px;\n  color:rgba(255,255,255,.72);\n  font-size:14px;\n  line-height:1.65\n}\n\n\/* MAP \/ TABLE \/ BRIDGE *\/\n.str9-chain-map,\n.str9-chain-table-card,\n.str9-chain-bridge{\n  background:#fff;\n  border:1px solid var(--border);\n  border-radius:18px;\n  padding:24px;\n  box-shadow:0 14px 36px rgba(0,0,0,.035);\n  margin-bottom:20px\n}\n\n.str9-chain-map h4,\n.str9-chain-table-card h4,\n.str9-chain-bridge h4{\n  font-size:18px;\n  font-weight:900;\n  margin:0 0 6px;\n  letter-spacing:-.03em\n}\n\n.str9-chain-map p,\n.str9-chain-table-card p,\n.str9-chain-bridge p{\n  color:var(--muted);\n  font-size:12px;\n  line-height:1.5;\n  margin:0 0 16px\n}\n\n.str9-chain-map-label{\n  font-size:10px;\n  font-weight:900;\n  text-transform:uppercase;\n  letter-spacing:.08em;\n  color:var(--muted);\n  margin:15px 0 8px\n}\n\n.str9-chain-map-row{\n  display:grid;\n  grid-template-columns:repeat(5,1fr) 64px;\n  gap:8px;\n  margin-bottom:10px\n}\n\n.str9-chain-map-row.support{\n  grid-template-columns:repeat(4,1fr)\n}\n\n.str9-chain-cell{\n  border:1px solid var(--border);\n  border-radius:12px;\n  background:#f7f7f7;\n  padding:14px;\n  min-height:138px\n}\n\n.str9-chain-cell.active{\n  border-color:var(--red-border);\n  background:#fff5f5\n}\n\n.str9-chain-cell-num{\n  font-size:10px;\n  font-weight:900;\n  color:var(--red);\n  margin-bottom:5px\n}\n\n.str9-chain-cell-name{\n  font-size:13px;\n  font-weight:900;\n  line-height:1.25;\n  margin-bottom:10px\n}\n\n.str9-chain-mini-line{\n  height:7px;\n  background:#e9e9e9;\n  border-radius:100px;\n  overflow:hidden;\n  margin:5px 0\n}\n\n.str9-chain-mini-fill{\n  height:100%;\n  background:var(--red);\n  border-radius:100px\n}\n\n.str9-chain-cell-small{\n  font-size:10px;\n  color:var(--muted);\n  line-height:1.4\n}\n\n.str9-chain-margin{\n  background:var(--red);\n  color:#fff;\n  border-radius:12px;\n  display:grid;\n  place-items:center;\n  font-weight:900;\n  font-size:11px;\n  letter-spacing:.1em;\n  writing-mode:vertical-rl\n}\n\n\/* TABLE *\/\n.str9-chain-table{\n  display:flex;\n  flex-direction:column;\n  gap:8px\n}\n\n.str9-chain-row{\n  display:grid;\n  grid-template-columns:52px 1fr 84px 84px 120px;\n  gap:10px;\n  align-items:center;\n  background:#f7f7f7;\n  border:1px solid var(--border);\n  border-radius:12px;\n  padding:10px 12px;\n  font-size:12px;\n  color:var(--muted);\n  font-weight:700\n}\n\n.str9-chain-row.head{\n  background:#080808;\n  color:#fff;\n  font-size:11px;\n  font-weight:900;\n  text-transform:uppercase;\n  letter-spacing:.05em\n}\n\n.str9-chain-row .name{\n  color:#111;\n  font-weight:900\n}\n\n\/* BRIDGE *\/\n.str9-chain-bridge-grid{\n  display:grid;\n  grid-template-columns:1fr 1fr;\n  gap:12px\n}\n\n.str9-chain-bridge-box{\n  background:#f7f7f7;\n  border:1px solid var(--border);\n  border-radius:14px;\n  padding:16px\n}\n\n.str9-chain-bridge-box strong{\n  display:block;\n  margin-bottom:10px;\n  color:var(--red)\n}\n\n.str9-chain-bridge-box ul{\n  margin:0;\n  padding-left:18px;\n  color:var(--muted);\n  font-size:12px;\n  line-height:1.55\n}\n\n.str9-chain-export-big{\n  width:100%;\n  padding:16px;\n  background:var(--red);\n  color:#fff;\n  border:0;\n  border-radius:10px;\n  font-size:16px;\n  font-weight:800;\n  cursor:pointer;\n  margin-bottom:12px\n}\n\n\/* RECOMMENDATIONS *\/\n.str9-chain-rec-grid{\n  display:grid;\n  grid-template-columns:repeat(3,1fr);\n  gap:18px\n}\n\n.str9-chain-rec{\n  background:#fff;\n  border:1px solid rgba(0,0,0,.09);\n  border-radius:22px;\n  padding:24px\n}\n\n.str9-chain-rec h3{\n  font-size:20px;\n  margin:0 0 10px;\n  letter-spacing:-.03em;\n  font-weight:900\n}\n\n.str9-chain-rec p{\n  color:var(--muted);\n  line-height:1.6;\n  margin:0 0 18px\n}\n\n.str9-chain-rec a{\n  color:var(--red)!important;\n  font-weight:900\n}\n\n\/* DARK *\/\n.str9-chain-dark,\n.str9-chain-dark h2,\n.str9-chain-dark .str9-chain-kicker{\n  color:#fff!important\n}\n\n.str9-chain-dark p{\n  color:rgba(255,255,255,.78)!important\n}\n\n\/* FAQ *\/\n.str9-chain-faq{\n  max-width:900px;\n  margin:0 auto\n}\n\n.str9-chain-faq details{\n  background:#fff;\n  border:1px solid rgba(0,0,0,.09);\n  border-radius:16px;\n  padding:20px 22px;\n  margin-bottom:12px\n}\n\n.str9-chain-faq summary{\n  cursor:pointer;\n  font-weight:900;\n  font-size:17px\n}\n\n.str9-chain-faq p{\n  color:var(--muted);\n  line-height:1.6;\n  margin:14px 0 0\n}\n\n\/* RESPONSIVE *\/\n@media(max-width:1180px){\n  .str9-chain-app{grid-template-columns:1fr}\n  .str9-chain-sidebar{min-height:auto}\n\n  .str9-chain-two,\n  .str9-chain-how,\n  .str9-chain-rec-grid{\n    grid-template-columns:1fr 1fr\n  }\n\n  .str9-chain-map-row,\n  .str9-chain-map-row.support{\n    grid-template-columns:1fr 1fr\n  }\n\n  .str9-chain-margin{\n    writing-mode:horizontal-tb;\n    min-height:48px\n  }\n}\n\n@media(max-width:760px){\n  .str9-chain-actions{flex-direction:column}\n  .str9-chain-btn{width:100%}\n\n  .str9-chain-topbar{\n    padding:12px 16px;\n    flex-direction:column;\n    align-items:flex-start;\n    gap:10px;\n    position:relative\n  }\n\n  .str9-chain-top-left,\n  .str9-chain-top-right{\n    width:100%;\n    justify-content:space-between\n  }\n\n  .str9-chain-progress-wrap{display:none}\n  .str9-chain-results{padding:16px}\n  .str9-chain-panel{padding:22px 18px}\n\n  .str9-chain-kpi-grid{\n    grid-template-columns:repeat(2,1fr)\n  }\n\n  .str9-chain-row,\n  .str9-chain-row.head{\n    grid-template-columns:44px 1fr 88px\n  }\n\n  .str9-chain-row span:nth-child(4),\n  .str9-chain-row span:nth-child(5){\n    display:none\n  }\n\n  .str9-chain-bridge-grid,\n  .str9-chain-two,\n  .str9-chain-how,\n  .str9-chain-rec-grid,\n  .str9-chain-map-row,\n  .str9-chain-map-row.support{\n    grid-template-columns:1fr\n  }\n\n  .str9-chain-results-title{\n    flex-direction:column;\n    align-items:flex-start\n  }\n}\n<\/style>\n\n\n<div class=\"str9-chain\" id=\"str9-chain-tool\">\n\n  <!-- HERO -->\n  <section class=\"str9-chain-hero\">\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-kicker\">\n        STRATE9Y\u00ae n\u00e1stroje \u00b7 Porterov hodnotov\u00fd re\u0165azec\n      <\/div>\n\n      <h1>\n        Porterov hodnotov\u00fd re\u0165azec:\n        <span>interakt\u00edvna anal\u00fdza va\u0161ej firmy.<\/span>\n      <\/h1>\n\n      <p>\n        Analyzujte prim\u00e1rne aj podporn\u00e9 aktivity firmy.\n        Pri ka\u017edej z nich pos\u00fa\u010fte hodnotu pre z\u00e1kazn\u00edka a n\u00e1kladov\u00fa n\u00e1ro\u010dnos\u0165.\n        V\u00fdsledok v\u00e1m uk\u00e1\u017ee zdroje diferenci\u00e1cie, k\u013e\u00fa\u010dov\u00e9 aktivity,\n        slab\u00e9 miesta a kandid\u00e1tov na \u010fal\u0161iu VRIO anal\u00fdzu.\n      <\/p>\n\n      <div class=\"str9-chain-actions\">\n\n        <a\n          class=\"str9-chain-btn\"\n          href=\"#nastroj-hodnotovy-retazec\"\n        >\n          Spusti\u0165 anal\u00fdzu \u2193\n        <\/a>\n\n        <a\n          class=\"str9-chain-btn secondary\"\n          href=\"\/hodnotovy-retezec\/\"\n        >\n          Pre\u010d\u00edta\u0165 n\u00e1vod\n        <\/a>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n\n  <!-- INTRO -->\n  <section class=\"str9-chain-section\">\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-two\">\n\n        <div class=\"str9-chain-card\">\n\n          <h3>\u010co tento n\u00e1stroj rie\u0161i?<\/h3>\n\n          <p>\n            Porterov hodnotov\u00fd re\u0165azec rozklad\u00e1 fungovanie firmy\n            na konkr\u00e9tne aktivity. Pom\u00e1ha odhali\u0165, kde vznik\u00e1 hodnota\n            pre z\u00e1kazn\u00edka, kde firma vynaklad\u00e1 neprimeran\u00e9 n\u00e1klady\n            a ktor\u00e9 aktivity m\u00f4\u017eu by\u0165 zdrojom konkuren\u010dnej v\u00fdhody.\n          <\/p>\n\n          <p style=\"margin-top:14px;\">\n            Potrebujete najsk\u00f4r pochopi\u0165 princ\u00edp a pozrie\u0165 si pr\u00edklady?\n            <a\n              class=\"str9-chain-link\"\n              href=\"\/hodnotovy-retezec\/\"\n            >\n              Pre\u010d\u00edtajte si \u010dl\u00e1nok o Porterovom hodnotovom re\u0165azci.\n            <\/a>\n          <\/p>\n\n        <\/div>\n\n\n        <div class=\"str9-chain-card\">\n\n          <h3>Kedy ho pou\u017ei\u0165?<\/h3>\n\n          <ul>\n            <li>ke\u010f chcete zisti\u0165, kde va\u0161a firma vytv\u00e1ra skuto\u010dn\u00fa hodnotu,<\/li>\n            <li>ke\u010f h\u013ead\u00e1te neefekt\u00edvne procesy, vysok\u00e9 n\u00e1klady alebo plytvanie,<\/li>\n            <li>ke\u010f pripravujete intern\u00fa strategick\u00fa anal\u00fdzu,<\/li>\n            <li>ke\u010f potrebujete vstupy pre SWOT alebo VRIO anal\u00fdzu,<\/li>\n            <li>ke\u010f sa rozhodujete, ktor\u00e9 aktivity zlep\u0161i\u0165 ako prv\u00e9.<\/li>\n          <\/ul>\n\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n\n  <!-- HOW -->\n  <section class=\"str9-chain-section soft\">\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-title\">\n\n        <h2>Ako s n\u00e1strojom pracova\u0165<\/h2>\n\n        <p>\n          Ka\u017ed\u00fa aktivitu posudzujte z dvoch poh\u013eadov:\n          ak\u00fa hodnotu vytv\u00e1ra pre z\u00e1kazn\u00edka a ak\u00e1 n\u00e1kladovo n\u00e1ro\u010dn\u00e1 je pre firmu.\n        <\/p>\n\n      <\/div>\n\n\n      <div class=\"str9-chain-how\">\n\n        <div class=\"str9-chain-how-card\">\n          <div class=\"str9-chain-num\">1<\/div>\n          <strong>Prejdite aktivity<\/strong>\n          <p>Postupne vyhodno\u0165te v\u0161etky prim\u00e1rne aj podporn\u00e9 aktivity hodnotov\u00e9ho re\u0165azca.<\/p>\n        <\/div>\n\n        <div class=\"str9-chain-how-card\">\n          <div class=\"str9-chain-num\">2<\/div>\n          <strong>Ohodno\u0165te faktory<\/strong>\n          <p>Pri ka\u017edom faktore nastavte hodnotu pre z\u00e1kazn\u00edka a n\u00e1kladov\u00fa n\u00e1ro\u010dnos\u0165 na \u0161k\u00e1le 1\u20135.<\/p>\n        <\/div>\n\n        <div class=\"str9-chain-how-card\">\n          <div class=\"str9-chain-num\">3<\/div>\n          <strong>Odha\u013ete vzorce<\/strong>\n          <p>N\u00e1stroj identifikuje diferenci\u00e1ciu, k\u013e\u00fa\u010dov\u00e9 aktivity, \u0161tandardn\u00e9 \u010dinnosti aj mo\u017en\u00e9 plytvanie.<\/p>\n        <\/div>\n\n        <div class=\"str9-chain-how-card\">\n          <div class=\"str9-chain-num\">4<\/div>\n          <strong>Prepojte so strat\u00e9giou<\/strong>\n          <p>Siln\u00e9 aktivity overte pomocou VRIO. Slab\u00e9 miesta preneste do SWOT anal\u00fdzy.<\/p>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n\n  <!-- APP INTRO -->\n  <section\n    class=\"str9-chain-app-intro\"\n    id=\"nastroj-hodnotovy-retazec\"\n  >\n    <div class=\"str9-chain-wrap\">\n\n      <h2>Spustite anal\u00fdzu hodnotov\u00e9ho re\u0165azca<\/h2>\n\n      <p>\n        Vyberte aktivitu v\u013eavo. Mapa hodnotov\u00e9ho re\u0165azca,\n        priority a Data Bridge sa bud\u00fa aktualizova\u0165 automaticky.\n      <\/p>\n\n    <\/div>\n  <\/section>\n\n\n  <!-- TOPBAR -->\n  <div class=\"str9-chain-topbar\">\n\n    <div class=\"str9-chain-top-left\">\n\n      <a\n        href=\"https:\/\/strate9y.com\/sk\/nastroje-2\/\"\n        class=\"str9-chain-back\"\n      >\n        \u2190 N\u00e1stroje\n      <\/a>\n\n      <span class=\"str9-chain-top-title\">\n        STRATE<span>9<\/span>Y\u00ae \u00b7 Hodnotov\u00fd re\u0165azec\n      <\/span>\n\n    <\/div>\n\n\n    <div class=\"str9-chain-top-right\">\n\n      <div class=\"str9-chain-progress-wrap\">\n        <div\n          class=\"str9-chain-progress\"\n          data-progress\n        ><\/div>\n      <\/div>\n\n      <span\n        class=\"str9-chain-progress-text\"\n        data-progress-text\n      >\n        0\/9\n      <\/span>\n\n      <button\n        type=\"button\"\n        class=\"str9-chain-export\"\n        data-export\n        disabled\n      >\n        \u2193 PDF\n      <\/button>\n\n    <\/div>\n  <\/div>\n\n\n  <!-- APP -->\n  <div class=\"str9-chain-app\">\n\n    <!-- LEFT -->\n    <div class=\"str9-chain-sidebar\">\n\n      <div class=\"str9-chain-side-head\">\n\n        <div class=\"str9-chain-badge\">\n          \ud83d\udd17 Intern\u00e9 aktivity a konkuren\u010dn\u00e1 v\u00fdhoda\n        <\/div>\n\n        <h2>Hodnotov\u00fd re\u0165azec<\/h2>\n\n        <p>\n          Pri ka\u017edej aktivite vyhodno\u0165te hodnotu pre z\u00e1kazn\u00edka\n          a n\u00e1kladov\u00fa n\u00e1ro\u010dnos\u0165.\n        <\/p>\n\n      <\/div>\n\n      <div\n        class=\"str9-chain-steps\"\n        data-steps\n      ><\/div>\n\n      <div\n        class=\"str9-chain-panel\"\n        data-panel\n      ><\/div>\n\n    <\/div>\n\n\n    <!-- RIGHT -->\n    <div class=\"str9-chain-results\">\n\n      <div class=\"str9-chain-results-title\">\n\n        <h3>V\u00fdsledky anal\u00fdzy hodnotov\u00e9ho re\u0165azca<\/h3>\n\n        <span\n          class=\"str9-chain-fill-hint\"\n          data-fill-hint\n        >\n          Za\u010dnite hodnoten\u00edm v\u013eavo \u2192\n        <\/span>\n\n      <\/div>\n\n\n      <!-- SUMMARY -->\n      <div class=\"str9-chain-summary\">\n\n        <div class=\"str9-chain-summary-title\">\n          Zhrnutie v\u00fdsledkov\n        <\/div>\n\n\n        <div class=\"str9-chain-kpi-grid\">\n\n          <div class=\"str9-chain-kpi\">\n            <div\n              class=\"str9-chain-kpi-num\"\n              data-kpi-diff\n            >0<\/div>\n            <div class=\"str9-chain-kpi-label\">\n              Diferenci\u00e1cia\n            <\/div>\n          <\/div>\n\n          <div class=\"str9-chain-kpi\">\n            <div\n              class=\"str9-chain-kpi-num\"\n              data-kpi-key\n            >0<\/div>\n            <div class=\"str9-chain-kpi-label\">\n              K\u013e\u00fa\u010dov\u00e9\n            <\/div>\n          <\/div>\n\n          <div class=\"str9-chain-kpi\">\n            <div\n              class=\"str9-chain-kpi-num\"\n              data-kpi-waste\n            >0<\/div>\n            <div class=\"str9-chain-kpi-label\">\n              Plytvanie\n            <\/div>\n          <\/div>\n\n          <div class=\"str9-chain-kpi\">\n            <div\n              class=\"str9-chain-kpi-num\"\n              data-kpi-score\n            >0<\/div>\n            <div class=\"str9-chain-kpi-label\">\n              Sk\u00f3re hodnoty\n            <\/div>\n          <\/div>\n\n        <\/div>\n\n\n        <div\n          class=\"str9-chain-diagnosis\"\n          data-diagnosis\n        >\n          Za\u010dnite vyhodnoten\u00edm prvej aktivity.\n        <\/div>\n\n      <\/div>\n\n\n      <!-- MAP -->\n      <div class=\"str9-chain-map\">\n\n        <h4>Mapa hodnotov\u00e9ho re\u0165azca<\/h4>\n\n        <p>\n          Aktivity s vysokou hodnotou pre z\u00e1kazn\u00edka a priaznivou\n          n\u00e1kladovou n\u00e1ro\u010dnos\u0165ou m\u00f4\u017eu by\u0165 potenci\u00e1lnym zdrojom diferenci\u00e1cie\n          alebo konkuren\u010dnej v\u00fdhody.\n        <\/p>\n\n        <div data-map><\/div>\n\n      <\/div>\n\n\n      <!-- TABLE -->\n      <div class=\"str9-chain-table-card\">\n\n        <h4>Priority pod\u013ea vytv\u00e1ranej hodnoty<\/h4>\n\n        <p>\n          Aktivity s\u00fa zoraden\u00e9 pod\u013ea kombin\u00e1cie hodnoty pre z\u00e1kazn\u00edka\n          a n\u00e1kladovej efekt\u00edvnosti.\n        <\/p>\n\n        <div\n          class=\"str9-chain-table\"\n          data-table\n        ><\/div>\n\n      <\/div>\n\n\n      <!-- BRIDGE -->\n      <div class=\"str9-chain-bridge\">\n\n        <h4>Data Bridge \u2192 VRIO + SWOT<\/h4>\n\n        <p>\n          Siln\u00e9 aktivity pou\u017eite ako vstup do VRIO anal\u00fdzy.\n          Slab\u00e9 miesta preneste do SWOT ako intern\u00e9 slab\u00e9 str\u00e1nky.\n        <\/p>\n\n\n        <div class=\"str9-chain-bridge-grid\">\n\n          <div class=\"str9-chain-bridge-box\">\n\n            <strong>\n              Siln\u00e9 str\u00e1nky \/ kandid\u00e1ti pre VRIO\n            <\/strong>\n\n            <ul data-bridge-strong>\n              <li>Zatia\u013e \u017eiadne.<\/li>\n            <\/ul>\n\n          <\/div>\n\n\n          <div class=\"str9-chain-bridge-box\">\n\n            <strong>\n              Slab\u00e9 miesta \/ SWOT W\n            <\/strong>\n\n            <ul data-bridge-weak>\n              <li>Zatia\u013e \u017eiadne.<\/li>\n            <\/ul>\n\n          <\/div>\n\n        <\/div>\n      <\/div>\n\n\n      <button\n        type=\"button\"\n        class=\"str9-chain-export-big\"\n        data-export-big\n        style=\"display:none;\"\n      >\n        \u2193 Stiahnu\u0165 hodnotov\u00fd re\u0165azec ako PDF\n      <\/button>\n\n    <\/div>\n  <\/div>\n\n\n  <!-- NEXT -->\n  <section class=\"str9-chain-section soft\">\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-title\">\n\n        <h2>Odpor\u00fa\u010dan\u00fd \u010fal\u0161\u00ed krok<\/h2>\n\n        <p>\n          V\u00fdsledok hodnotov\u00e9ho re\u0165azca je v\u00fdchodiskom pre \u010fal\u0161ie\n          strategick\u00e9 rozhodovanie. Pokra\u010dujte pod\u013ea toho, \u010do anal\u00fdza odhalila.\n        <\/p>\n\n      <\/div>\n\n\n      <div class=\"str9-chain-rec-grid\">\n\n        <div class=\"str9-chain-rec\">\n\n          <h3>M\u00e1te siln\u00e9 aktivity?<\/h3>\n\n          <p>\n            Overte, \u010di s\u00fa hodnotn\u00e9, vz\u00e1cne, \u0165a\u017eko napodobite\u013en\u00e9\n            a \u010di je firma pripraven\u00e1 ich naplno vyu\u017ei\u0165.\n          <\/p>\n\n          <a href=\"\/nastroje\/vrio-analyza\/\">\n            Pokra\u010dova\u0165 na VRIO \u2192\n          <\/a>\n\n        <\/div>\n\n\n        <div class=\"str9-chain-rec\">\n\n          <h3>M\u00e1te slab\u00e9 miesta?<\/h3>\n\n          <p>\n            Preneste ich do SWOT anal\u00fdzy a ur\u010dte,\n            ktor\u00e9 intern\u00e9 slabiny je potrebn\u00e9 rie\u0161i\u0165 ako prv\u00e9.\n          <\/p>\n\n          <a href=\"https:\/\/strate9y.com\/sk\/ako-krok-za-krokom-vypracovat-swot-analyzu-firmy\/swot-analyza-2\/\">\n            Pokra\u010dova\u0165 na SWOT \u2192\n          <\/a>\n\n        <\/div>\n\n\n        <div class=\"str9-chain-rec\">\n\n          <h3>Potrebujete preveri\u0165 biznis model?<\/h3>\n\n          <p>\n            Premietnite k\u013e\u00fa\u010dov\u00e9 aktivity a vytv\u00e1ran\u00fa hodnotu\n            do svojho Business Model Canvasu.\n          <\/p>\n\n          <a href=\"https:\/\/strate9y.com\/sk\/nastroj-business-model-canvas-sk\/business-model-canvas\/\">\n            Pokra\u010dova\u0165 na BMC \u2192\n          <\/a>\n\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n\n  <!-- CTA -->\n  <section\n    class=\"str9-chain-section str9-chain-dark\"\n    style=\"background:#080808;\"\n  >\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-title\">\n\n        <div class=\"str9-chain-kicker\">\n          \u010co \u010falej?\n        <\/div>\n\n        <h2>\n          Vid\u00edte, kde vznik\u00e1 hodnota. Teraz ju preme\u0148te na strat\u00e9giu.\n        <\/h2>\n\n        <p>\n          STRATE9Y\u00ae Biznis diagnostika v\u00e1m pom\u00f4\u017ee ur\u010di\u0165,\n          ktor\u00e9 aktivity maj\u00fa by\u0165 zdrojom rastu, diferenci\u00e1cie\n          a dlhodobej konkuren\u010dnej v\u00fdhody.\n        <\/p>\n\n        <div style=\"margin-top:28px;\">\n\n          <a\n            class=\"str9-chain-btn\"\n            href=\"https:\/\/strate9y.com\/sk\/strate9y-biznis-diagnostika\/\"\n          >\n            Chcem STRATE9Y\u00ae diagnostiku \u2192\n          <\/a>\n\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n\n  <!-- FAQ -->\n  <section class=\"str9-chain-section soft\">\n    <div class=\"str9-chain-wrap\">\n\n      <div class=\"str9-chain-title\">\n        <h2>FAQ<\/h2>\n      <\/div>\n\n\n      <div class=\"str9-chain-faq\">\n\n        <details>\n\n          <summary>\n            \u010co je Porterov hodnotov\u00fd re\u0165azec?\n          <\/summary>\n\n          <p>\n            Porterov hodnotov\u00fd re\u0165azec je strategick\u00fd analytick\u00fd r\u00e1mec,\n            ktor\u00fd rozde\u013euje fungovanie firmy na prim\u00e1rne a podporn\u00e9 aktivity.\n            Pom\u00e1ha identifikova\u0165, kde firma vytv\u00e1ra hodnotu pre z\u00e1kazn\u00edka,\n            kde vznikaj\u00fa n\u00e1klady a kde sa m\u00f4\u017ee nach\u00e1dza\u0165 zdroj konkuren\u010dnej v\u00fdhody.\n          <\/p>\n\n        <\/details>\n\n\n        <details>\n\n          <summary>\n            Ak\u00fd je rozdiel medzi hodnotov\u00fdm re\u0165azcom a VRIO anal\u00fdzou?\n          <\/summary>\n\n          <p>\n            Hodnotov\u00fd re\u0165azec analyzuje jednotliv\u00e9 aktivity firmy\n            a ich pr\u00edspevok k vytv\u00e1raniu hodnoty.\n            VRIO n\u00e1sledne preveruje, \u010di vybran\u00e9 zdroje a schopnosti\n            sp\u013a\u0148aj\u00fa podmienky na vytvorenie do\u010dasnej alebo udr\u017eate\u013enej\n            konkuren\u010dnej v\u00fdhody.\n          <\/p>\n\n        <\/details>\n\n\n        <details>\n\n          <summary>\n            \u010co v tejto anal\u00fdze znamen\u00e1 plytvanie?\n          <\/summary>\n\n          <p>\n            Ako mo\u017en\u00e9 plytvanie ozna\u010dujeme aktivitu s vysokou\n            n\u00e1kladovou n\u00e1ro\u010dnos\u0165ou, ktor\u00e1 z\u00e1rove\u0148 vytv\u00e1ra n\u00edzku hodnotu\n            pre z\u00e1kazn\u00edka alebo m\u00e1 n\u00edzky strategick\u00fd pr\u00ednos.\n            Tak\u00e1to aktivita je kandid\u00e1tom na zjednodu\u0161enie,\n            automatiz\u00e1ciu, zmenu alebo odstr\u00e1nenie.\n          <\/p>\n\n        <\/details>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/html2canvas\/1.4.1\/html2canvas.min.js\"><\/script>\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jspdf\/2.5.1\/jspdf.umd.min.js\"><\/script>\n\n\n<script>\n(function(){\n\nfunction startChain(){\n\n  const root=document.getElementById('str9-chain-tool');\n\n  if(!root || root.dataset.initialized==='true'){\n    return;\n  }\n\n  root.dataset.initialized='true';\n\n\n  \/* =====================================================\n  ACTIVITIES\n  ===================================================== *\/\n\n  const ACT=[\n\n    {\n      id:'p1',\n      num:'01',\n      type:'primary',\n      name:'Vstupn\u00e1 logistika',\n\n      desc:'Pr\u00edjem, skladovanie a riadenie vstupov od dod\u00e1vate\u013eov pred ich pou\u017eit\u00edm vo firme.',\n\n      hint:'Vysok\u00e1 hodnota pri primeranej n\u00e1kladovosti m\u00f4\u017ee znamena\u0165 v\u00fdhodu v z\u00e1sobovan\u00ed, dostupnosti vstupov alebo ich kvalite.',\n\n      factors:[\n        'Pr\u00edjem a skladovanie vstupov alebo d\u00e1t',\n        'Riadenie vz\u0165ahov s dod\u00e1vate\u013emi',\n        'Kontrola kvality vstupov',\n        'Syst\u00e9my riadenia z\u00e1sob'\n      ]\n    },\n\n\n    {\n      id:'p2',\n      num:'02',\n      type:'primary',\n      name:'Oper\u00e1cie',\n\n      desc:'Transform\u00e1cia vstupov na fin\u00e1lny produkt, slu\u017ebu alebo v\u00fdsledok poskytovan\u00fd z\u00e1kazn\u00edkovi.',\n\n      hint:'Oper\u00e1cie b\u00fdvaj\u00fa jadrom hodnotov\u00e9ho re\u0165azca. \u010casto s\u00fa n\u00e1kladovo v\u00fdznamn\u00e9, ale z\u00e1rove\u0148 rozhoduj\u00fa o kvalite a hodnote v\u00fdsledku.',\n\n      factors:[\n        'V\u00fdrobn\u00e9 alebo prev\u00e1dzkov\u00e9 procesy',\n        'Kontrola kvality v\u00fdstupu',\n        'Kapacita a \u0161k\u00e1lovate\u013enos\u0165',\n        'Automatiz\u00e1cia a efekt\u00edvnos\u0165'\n      ]\n    },\n\n\n    {\n      id:'p3',\n      num:'03',\n      type:'primary',\n      name:'V\u00fdstupn\u00e1 logistika',\n\n      desc:'Procesy spojen\u00e9 s doru\u010den\u00edm hotov\u00e9ho produktu alebo slu\u017eby z\u00e1kazn\u00edkovi.',\n\n      hint:'Pri digit\u00e1lnych produktoch m\u00f4\u017ee by\u0165 v\u00fdstupn\u00e1 logistika ve\u013emi lacn\u00e1 a vysoko \u0161k\u00e1lovate\u013en\u00e1, \u010do m\u00f4\u017ee predstavova\u0165 v\u00fdznamn\u00fa ekonomick\u00fa v\u00fdhodu.',\n\n      factors:[\n        'Distrib\u00facia a doru\u010denie z\u00e1kazn\u00edkovi',\n        'Skladovanie hotov\u00fdch produktov alebo d\u00e1t',\n        'Spracovanie objedn\u00e1vok'\n      ]\n    },\n\n\n    {\n      id:'p4',\n      num:'04',\n      type:'primary',\n      name:'Marketing a predaj',\n\n      desc:'Aktivity spojen\u00e9 so z\u00edskavan\u00edm z\u00e1kazn\u00edkov, tvorbou ponuky, cenotvorbou a predajnou konverziou.',\n\n      hint:'Schopnos\u0165 z\u00edskava\u0165 spr\u00e1vnych z\u00e1kazn\u00edkov efekt\u00edvnej\u0161ie alebo lacnej\u0161ie ne\u017e konkurencia m\u00f4\u017ee by\u0165 v\u00fdznamn\u00fdm zdrojom v\u00fdhody.',\n\n      factors:[\n        'Identifik\u00e1cia a oslovovanie z\u00e1kazn\u00edkov',\n        'Cenotvorba a tvorba ponuky',\n        'Predajn\u00e9 procesy a konverzia',\n        'Zna\u010dka a marketingov\u00e1 komunik\u00e1cia'\n      ]\n    },\n\n\n    {\n      id:'p5',\n      num:'05',\n      type:'primary',\n      name:'Servis a z\u00e1kazn\u00edcka podpora',\n\n      desc:'Aktivity po predaji, ktor\u00e9 ovplyv\u0148uj\u00fa spokojnos\u0165, retenciu, lojalitu a \u010fal\u0161iu hodnotu z\u00e1kazn\u00edka.',\n\n      hint:'Nad\u0161tandardn\u00e1 starostlivos\u0165 o z\u00e1kazn\u00edka pri primeran\u00fdch n\u00e1kladoch m\u00f4\u017ee by\u0165 siln\u00fdm zdrojom diferenci\u00e1cie.',\n\n      factors:[\n        'Z\u00e1kazn\u00edcka podpora a rie\u0161enie probl\u00e9mov',\n        'Onboarding nov\u00fdch z\u00e1kazn\u00edkov',\n        'Retencia a lojalita',\n        'Upsell a cross-sell'\n      ]\n    },\n\n\n    {\n      id:'s1',\n      num:'S1',\n      type:'support',\n      name:'Infra\u0161trukt\u00fara firmy',\n\n      desc:'Riadenie firmy, financie, pr\u00e1vne prostredie, kontroln\u00e9 mechanizmy a strategick\u00e9 pl\u00e1novanie.',\n\n      hint:'Kvalitn\u00e1 firemn\u00e1 infra\u0161trukt\u00fara vytv\u00e1ra podmienky na efekt\u00edvne fungovanie a \u0161k\u00e1lovanie ostatn\u00fdch aktiv\u00edt.',\n\n      factors:[\n        'Finan\u010dn\u00e9 riadenie a controlling',\n        'Pr\u00e1vne z\u00e1le\u017eitosti a compliance',\n        'Strategick\u00e9 pl\u00e1novanie',\n        'Vz\u0165ahy s investormi a \u010fal\u0161\u00edmi k\u013e\u00fa\u010dov\u00fdmi partnermi'\n      ]\n    },\n\n\n    {\n      id:'s2',\n      num:'S2',\n      type:'support',\n      name:'Riadenie \u013eudsk\u00fdch zdrojov',\n\n      desc:'N\u00e1bor, rozvoj, motiv\u00e1cia, kult\u00fara a udr\u017eanie \u013eud\u00ed potrebn\u00fdch na realiz\u00e1ciu strat\u00e9gie.',\n\n      hint:'V\u00fdkonn\u00fd t\u00edm, jedine\u010dn\u00e9 know-how a siln\u00e1 firemn\u00e1 kult\u00fara m\u00f4\u017eu vytv\u00e1ra\u0165 dlhodob\u00fa konkuren\u010dn\u00fa v\u00fdhodu.',\n\n      factors:[\n        'N\u00e1bor a onboarding talentov',\n        'Rozvoj a vzdel\u00e1vanie',\n        'Firemn\u00e1 kult\u00fara a anga\u017eovanos\u0165',\n        'Odme\u0148ovanie a benefity'\n      ]\n    },\n\n\n    {\n      id:'s3',\n      num:'S3',\n      type:'support',\n      name:'Technologick\u00fd rozvoj',\n\n      desc:'V\u00fdskum, v\u00fdvoj, inov\u00e1cie, IT infra\u0161trukt\u00fara, d\u00e1ta a technologick\u00e9 schopnosti firmy.',\n\n      hint:'Jedine\u010dn\u00e1 technol\u00f3gia, know-how alebo schopnos\u0165 inovova\u0165 m\u00f4\u017ee vytv\u00e1ra\u0165 bari\u00e9ru vstupu a v\u00fdznamn\u00fa konkuren\u010dn\u00fa v\u00fdhodu.',\n\n      factors:[\n        'V\u00fdskum a v\u00fdvoj',\n        'IT infra\u0161trukt\u00fara a bezpe\u010dnos\u0165',\n        'Inov\u00e1cie a du\u0161evn\u00e9 vlastn\u00edctvo',\n        'D\u00e1tov\u00e1 analytika a AI'\n      ]\n    },\n\n\n    {\n      id:'s4',\n      num:'S4',\n      type:'support',\n      name:'N\u00e1kup a obstar\u00e1vanie',\n\n      desc:'Zabezpe\u010dovanie vstupov, n\u00e1strojov, slu\u017eieb a dod\u00e1vate\u013esk\u00fdch podmienok potrebn\u00fdch na fungovanie hodnotov\u00e9ho re\u0165azca.',\n\n      hint:'Efekt\u00edvne obstar\u00e1vanie m\u00f4\u017ee zni\u017eova\u0165 n\u00e1klady naprie\u010d cel\u00fdm hodnotov\u00fdm re\u0165azcom bez zni\u017eovania hodnoty pre z\u00e1kazn\u00edka.',\n\n      factors:[\n        'N\u00e1kup k\u013e\u00fa\u010dov\u00fdch vstupov a n\u00e1strojov',\n        'V\u00fdber a hodnotenie dod\u00e1vate\u013eov',\n        'Vyjedn\u00e1vanie zmluvn\u00fdch podmienok a \u00faspor'\n      ]\n    }\n\n  ];\n\n\n  \/* =====================================================\n  STATE\n  ===================================================== *\/\n\n  let current=0;\n\n  const visited=new Set();\n\n  let scores=ACT.map(function(activity){\n\n    return activity.factors.map(function(){\n      return {\n        v:3,\n        c:3\n      };\n    });\n\n  });\n\n\n  const el={\n\n    steps:root.querySelector('[data-steps]'),\n\n    panel:root.querySelector('[data-panel]'),\n\n    progress:root.querySelector('[data-progress]'),\n\n    progressText:root.querySelector('[data-progress-text]'),\n\n    fillHint:root.querySelector('[data-fill-hint]'),\n\n    exportBtn:root.querySelector('[data-export]'),\n\n    exportBig:root.querySelector('[data-export-big]'),\n\n    kpiDiff:root.querySelector('[data-kpi-diff]'),\n\n    kpiKey:root.querySelector('[data-kpi-key]'),\n\n    kpiWaste:root.querySelector('[data-kpi-waste]'),\n\n    kpiScore:root.querySelector('[data-kpi-score]'),\n\n    diagnosis:root.querySelector('[data-diagnosis]'),\n\n    map:root.querySelector('[data-map]'),\n\n    table:root.querySelector('[data-table]'),\n\n    strong:root.querySelector('[data-bridge-strong]'),\n\n    weak:root.querySelector('[data-bridge-weak]')\n\n  };\n\n\n  \/* =====================================================\n  HELPERS\n  ===================================================== *\/\n\n  function avg(i,key){\n\n    return scores[i].reduce(function(sum,item){\n      return sum+item[key];\n    },0)\/scores[i].length;\n\n  }\n\n\n  function role(v,c){\n\n    if(v>=4 && c<=2.5){\n      return {\n        cls:'diff',\n        txt:'Diferenci\u00e1cia'\n      };\n    }\n\n    if(v>=4){\n      return {\n        cls:'key',\n        txt:'K\u013e\u00fa\u010dov\u00e1'\n      };\n    }\n\n    if(c>=4 && v<3){\n      return {\n        cls:'waste',\n        txt:'Plytvanie'\n      };\n    }\n\n    return {\n      cls:'std',\n      txt:'\u0160tandard'\n    };\n\n  }\n\n\n  function valueScore(v,c){\n\n    const valuePart=(v-1)\/4*100;\n\n    const costPart=(5-c)\/4*100;\n\n    return Math.round(\n      (valuePart+costPart)\/2\n    );\n\n  }\n\n\n  function allActs(){\n\n    return ACT.map(function(activity,i){\n\n      const v=avg(i,'v');\n\n      const c=avg(i,'c');\n\n      return {\n        id:activity.id,\n        num:activity.num,\n        type:activity.type,\n        name:activity.name,\n        desc:activity.desc,\n        hint:activity.hint,\n        factors:activity.factors,\n        i:i,\n        v:v,\n        c:c,\n        score:valueScore(v,c),\n        r:role(v,c),\n        visited:visited.has(i)\n      };\n\n    });\n\n  }\n\n\n  \/* =====================================================\n  STEPS\n  ===================================================== *\/\n\n  function buildSteps(){\n\n    el.steps.innerHTML=ACT.map(function(activity,i){\n\n      return (\n        '<button type=\"button\" ' +\n        'class=\"str9-chain-dot\" ' +\n        'data-i=\"'+i+'\" ' +\n        'aria-label=\"'+activity.name+'\">' +\n        activity.num +\n        '<\/button>'\n      );\n\n    }).join('');\n\n\n    el.steps.querySelectorAll('[data-i]').forEach(function(button){\n\n      button.addEventListener('click',function(){\n\n        current=Number(button.dataset.i);\n\n        renderAll();\n\n      });\n\n    });\n\n  }\n\n\n  function renderStepStates(){\n\n    el.steps\n      .querySelectorAll('.str9-chain-dot')\n      .forEach(function(button,index){\n\n        button.classList.remove(\n          'done',\n          'active'\n        );\n\n        if(visited.has(index)){\n          button.classList.add('done');\n        }\n\n        if(index===current){\n          button.classList.add('active');\n        }\n\n      });\n\n  }\n\n\n  \/* =====================================================\n  RATINGS\n  ===================================================== *\/\n\n  function rating(ai,fi,key,value){\n\n    let html='<div class=\"str9-chain-rating\">';\n\n    for(let n=1;n<=5;n++){\n\n      html+=\n        '<button type=\"button\" ' +\n        'class=\"str9-chain-rate '+(value===n?'selected':'')+'\" ' +\n        'data-ai=\"'+ai+'\" ' +\n        'data-fi=\"'+fi+'\" ' +\n        'data-k=\"'+key+'\" ' +\n        'data-v=\"'+n+'\">' +\n        n +\n        '<\/button>';\n\n    }\n\n    html+='<\/div>';\n\n    return html;\n\n  }\n\n\n  \/* =====================================================\n  PANEL\n  ===================================================== *\/\n\n  function renderPanel(){\n\n    const activity=ACT[current];\n\n    const typeLabel=\n      activity.type==='primary'\n        ? 'Prim\u00e1rna aktivita'\n        : 'Podporn\u00e1 aktivita';\n\n\n    const factorHtml=activity.factors.map(function(factor,fi){\n\n      const score=scores[current][fi];\n\n      const factorRole=role(\n        score.v,\n        score.c\n      );\n\n\n      return (\n\n        '<div class=\"str9-chain-factor\">' +\n\n          '<div class=\"str9-chain-factor-head\">' +\n\n            '<div class=\"str9-chain-factor-name\">' +\n              factor +\n            '<\/div>' +\n\n            '<span class=\"str9-chain-role '+factorRole.cls+'\">' +\n              factorRole.txt +\n            '<\/span>' +\n\n          '<\/div>' +\n\n\n          '<div class=\"str9-chain-score-grid\">' +\n\n            '<div class=\"str9-chain-score\">' +\n\n              '<div class=\"str9-chain-score-head\">' +\n                '<strong>Hodnota pre z\u00e1kazn\u00edka<\/strong>' +\n                '<span>'+score.v+'<\/span>' +\n              '<\/div>' +\n\n              '<div class=\"str9-chain-help\">' +\n                '1 = ve\u013emi n\u00edzka hodnota \u00b7 5 = ve\u013emi vysok\u00e1 hodnota' +\n              '<\/div>' +\n\n              rating(\n                current,\n                fi,\n                'v',\n                score.v\n              ) +\n\n            '<\/div>' +\n\n\n            '<div class=\"str9-chain-score\">' +\n\n              '<div class=\"str9-chain-score-head\">' +\n                '<strong>N\u00e1kladov\u00e1 n\u00e1ro\u010dnos\u0165<\/strong>' +\n                '<span>'+score.c+'<\/span>' +\n              '<\/div>' +\n\n              '<div class=\"str9-chain-help\">' +\n                '1 = ve\u013emi n\u00edzke n\u00e1klady \u00b7 5 = ve\u013emi vysok\u00e9 n\u00e1klady' +\n              '<\/div>' +\n\n              rating(\n                current,\n                fi,\n                'c',\n                score.c\n              ) +\n\n            '<\/div>' +\n\n          '<\/div>' +\n\n        '<\/div>'\n\n      );\n\n    }).join('');\n\n\n    const nextText=\n      current===ACT.length-1\n        ? 'Dokon\u010di\u0165 anal\u00fdzu \u2192'\n        : '\u010eal\u0161ia aktivita \u2192';\n\n\n    el.panel.innerHTML=\n\n      '<div class=\"str9-chain-q-eyebrow\">' +\n        typeLabel +\n        ' \u00b7 ' +\n        activity.num +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-q-title\">' +\n        activity.name +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-q-desc\">' +\n        activity.desc +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-q-hint\">' +\n        '<strong>Strategick\u00fd poh\u013ead:<\/strong> ' +\n        activity.hint +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-factor-list\">' +\n        factorHtml +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-nav\">' +\n\n        '<button type=\"button\" ' +\n        'class=\"str9-chain-prev\" ' +\n        'data-prev ' +\n        (current===0?'disabled':'') +\n        '>' +\n        '\u2190 Predch\u00e1dzaj\u00faca' +\n        '<\/button>' +\n\n        '<button type=\"button\" ' +\n        'class=\"str9-chain-next\" ' +\n        'data-next>' +\n        nextText +\n        '<\/button>' +\n\n      '<\/div>';\n\n\n    el.panel\n      .querySelectorAll('[data-ai]')\n      .forEach(function(button){\n\n        button.addEventListener('click',function(){\n\n          const ai=Number(button.dataset.ai);\n\n          const fi=Number(button.dataset.fi);\n\n          const key=button.dataset.k;\n\n          const value=Number(button.dataset.v);\n\n          scores[ai][fi][key]=value;\n\n          visited.add(ai);\n\n          renderAll();\n\n        });\n\n      });\n\n\n    const previous=el.panel.querySelector('[data-prev]');\n\n    if(previous){\n\n      previous.addEventListener('click',function(){\n\n        if(current>0){\n\n          current--;\n\n          renderAll();\n\n        }\n\n      });\n\n    }\n\n\n    const next=el.panel.querySelector('[data-next]');\n\n    if(next){\n\n      next.addEventListener('click',function(){\n\n        \/*\n        Kliknut\u00edm na \"\u010fal\u0161ia aktivita\" pou\u017e\u00edvate\u013e z\u00e1rove\u0148\n        potvrdzuje aktu\u00e1lne hodnotenie, aj ke\u010f ponechal hodnoty 3\/3.\n        *\/\n\n        visited.add(current);\n\n\n        if(current<ACT.length-1){\n\n          current++;\n\n          renderAll();\n\n        }\n        else{\n\n          renderAll();\n\n          const resultArea=root.querySelector(\n            '.str9-chain-results'\n          );\n\n          if(resultArea){\n\n            resultArea.scrollIntoView({\n              behavior:'smooth',\n              block:'start'\n            });\n\n          }\n\n        }\n\n      });\n\n    }\n\n  }\n\n\n  \/* =====================================================\n  PROGRESS\n  ===================================================== *\/\n\n  function renderProgress(){\n\n    const count=visited.size;\n\n    const percent=Math.round(\n      count\/ACT.length*100\n    );\n\n    el.progress.style.width=\n      percent+'%';\n\n    el.progressText.textContent=\n      count+'\/'+ACT.length;\n\n\n    const complete=\n      count===ACT.length;\n\n    el.exportBtn.disabled=\n      !complete;\n\n    el.exportBig.style.display=\n      complete\n        ? 'block'\n        : 'none';\n\n\n    if(count===0){\n\n      el.fillHint.textContent=\n        'Za\u010dnite hodnoten\u00edm v\u013eavo \u2192';\n\n    }\n\n    else if(!complete){\n\n      el.fillHint.textContent=\n        'Vyhodnoten\u00e9 '+count+' z '+ACT.length;\n\n    }\n\n    else{\n\n      el.fillHint.textContent=\n        'Anal\u00fdza je dokon\u010den\u00e1 \u2713';\n\n    }\n\n  }\n\n\n  \/* =====================================================\n  SUMMARY\n  ===================================================== *\/\n\n  function renderSummary(){\n\n    const acts=allActs().filter(function(a){\n      return a.visited;\n    });\n\n\n    const diff=acts.filter(function(a){\n      return a.r.cls==='diff';\n    }).length;\n\n\n    const key=acts.filter(function(a){\n      return a.r.cls==='key';\n    }).length;\n\n\n    const waste=acts.filter(function(a){\n      return a.r.cls==='waste';\n    }).length;\n\n\n    const score=\n      acts.length\n        ? Math.round(\n            acts.reduce(function(sum,a){\n              return sum+a.score;\n            },0)\/acts.length\n          )\n        : 0;\n\n\n    el.kpiDiff.textContent=diff;\n\n    el.kpiKey.textContent=key;\n\n    el.kpiWaste.textContent=waste;\n\n    el.kpiScore.textContent=score;\n\n\n    if(acts.length===0){\n\n      el.diagnosis.textContent=\n        'Za\u010dnite vyhodnoten\u00edm prvej aktivity. V\u00fdsledky sa bud\u00fa aktualizova\u0165 priebe\u017ene.';\n\n      return;\n    }\n\n\n    if(acts.length<ACT.length){\n\n      el.diagnosis.innerHTML=\n\n        '<strong>Priebe\u017en\u00fd v\u00fdsledok:<\/strong> ' +\n        'vyhodnotili ste '+acts.length+' z '+ACT.length+' aktiv\u00edt. ' +\n        'Dokon\u010dite cel\u00fd hodnotov\u00fd re\u0165azec, aby ste z\u00edskali spo\u013eahlivej\u0161\u00ed obraz o zdrojoch hodnoty a n\u00e1kladovej n\u00e1ro\u010dnosti.';\n\n      return;\n    }\n\n\n    if(diff>0 && waste===0){\n\n      el.diagnosis.innerHTML=\n\n        '<strong>Hodnotov\u00fd re\u0165azec obsahuje potenci\u00e1lne zdroje diferenci\u00e1cie.<\/strong> ' +\n        'Identifikovali ste '+diff+' '+(diff===1?'aktivitu':'aktivity')+\n        ' s vysokou hodnotou a priaznivou n\u00e1kladovos\u0165ou. ' +\n        'Tieto aktivity odpor\u00fa\u010dame \u010falej preveri\u0165 pomocou VRIO anal\u00fdzy.';\n\n    }\n\n    else if(diff>0 && waste>0){\n\n      el.diagnosis.innerHTML=\n\n        '<strong>Firma m\u00e1 siln\u00e9 aktivity aj priestor na optimaliz\u00e1ciu.<\/strong> ' +\n        'Identifikovali ste '+diff+' potenci\u00e1lnych zdrojov diferenci\u00e1cie a '+\n        waste+' oblast\u00ed s rizikom plytvania. ' +\n        'Chr\u00e1\u0148te a rozv\u00edjajte siln\u00e9 aktivity, z\u00e1rove\u0148 presk\u00famajte pr\u00ed\u010diny vysok\u00fdch n\u00e1kladov v slab\u0161\u00edch oblastiach.';\n\n    }\n\n    else if(waste>0){\n\n      el.diagnosis.innerHTML=\n\n        '<strong>Najv\u00e4\u010d\u0161\u00ed potenci\u00e1l sa moment\u00e1lne nach\u00e1dza v optimaliz\u00e1cii.<\/strong> ' +\n        'Anal\u00fdza identifikovala '+waste+\n        ' aktiv\u00edt s vysokou n\u00e1kladovou n\u00e1ro\u010dnos\u0165ou a relat\u00edvne n\u00edzkou vytv\u00e1ranou hodnotou. ' +\n        'Preverte mo\u017enosti zjednodu\u0161enia, automatiz\u00e1cie, outsourcingu alebo zmeny procesu.';\n\n    }\n\n    else{\n\n      el.diagnosis.innerHTML=\n\n        '<strong>Hodnotov\u00fd re\u0165azec je preva\u017ene vyv\u00e1\u017een\u00fd.<\/strong> ' +\n        'V\u00e4\u010d\u0161ina aktiv\u00edt sa nach\u00e1dza v \u0161tandardnom alebo k\u013e\u00fa\u010dovom p\u00e1sme. ' +\n        '\u010eal\u0161\u00edm krokom je zisti\u0165, ktor\u00e9 z nich maj\u00fa potenci\u00e1l vytvori\u0165 v\u00fdraznej\u0161iu diferenci\u00e1ciu alebo udr\u017eate\u013en\u00fa konkuren\u010dn\u00fa v\u00fdhodu.';\n\n    }\n\n  }\n\n\n  \/* =====================================================\n  MAP\n  ===================================================== *\/\n\n  function mapCell(a){\n\n    const active=\n      a.visited\n        ? ' active'\n        : '';\n\n    const valueWidth=\n      Math.round(a.v\/5*100);\n\n    const costWidth=\n      Math.round(a.c\/5*100);\n\n\n    return (\n\n      '<div class=\"str9-chain-cell'+active+'\">' +\n\n        '<div class=\"str9-chain-cell-num\">' +\n          a.num +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-cell-name\">' +\n          a.name +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-cell-small\">' +\n          'Hodnota: '+a.v.toFixed(1) +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-mini-line\">' +\n          '<div class=\"str9-chain-mini-fill\" style=\"width:'+valueWidth+'%;\"><\/div>' +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-cell-small\">' +\n          'N\u00e1klady: '+a.c.toFixed(1) +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-mini-line\">' +\n          '<div class=\"str9-chain-mini-fill\" style=\"width:'+costWidth+'%;\"><\/div>' +\n        '<\/div>' +\n\n        '<div class=\"str9-chain-cell-small\" style=\"margin-top:8px;font-weight:900;\">' +\n          (a.visited?a.r.txt:'Nehodnoten\u00e9') +\n        '<\/div>' +\n\n      '<\/div>'\n\n    );\n\n  }\n\n\n  function renderMap(){\n\n    const acts=allActs();\n\n    const primary=acts.filter(function(a){\n      return a.type==='primary';\n    });\n\n    const support=acts.filter(function(a){\n      return a.type==='support';\n    });\n\n\n    el.map.innerHTML=\n\n      '<div class=\"str9-chain-map-label\">' +\n        'Prim\u00e1rne aktivity' +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-map-row\">' +\n\n        primary.map(mapCell).join('') +\n\n        '<div class=\"str9-chain-margin\">' +\n          'MAR\u017dA' +\n        '<\/div>' +\n\n      '<\/div>' +\n\n\n      '<div class=\"str9-chain-map-label\">' +\n        'Podporn\u00e9 aktivity' +\n      '<\/div>' +\n\n      '<div class=\"str9-chain-map-row support\">' +\n\n        support.map(mapCell).join('') +\n\n      '<\/div>';\n\n  }\n\n\n  \/* =====================================================\n  TABLE\n  ===================================================== *\/\n\n  function renderTable(){\n\n    let acts=allActs();\n\n\n    acts.sort(function(a,b){\n\n      if(a.visited && !b.visited){\n        return -1;\n      }\n\n      if(!a.visited && b.visited){\n        return 1;\n      }\n\n      return b.score-a.score;\n\n    });\n\n\n    let html=\n\n      '<div class=\"str9-chain-row head\">' +\n\n        '<span>Akt.<\/span>' +\n        '<span>Aktivita<\/span>' +\n        '<span>Hodnota<\/span>' +\n        '<span>N\u00e1klady<\/span>' +\n        '<span>Profil<\/span>' +\n\n      '<\/div>';\n\n\n    acts.forEach(function(a){\n\n      html+=\n\n        '<div class=\"str9-chain-row\">' +\n\n          '<span>'+a.num+'<\/span>' +\n\n          '<span class=\"name\">'+a.name+'<\/span>' +\n\n          '<span>' +\n            (a.visited?a.v.toFixed(1):'\u2014') +\n          '<\/span>' +\n\n          '<span>' +\n            (a.visited?a.c.toFixed(1):'\u2014') +\n          '<\/span>' +\n\n          '<span>' +\n            (a.visited?a.r.txt:'Nehodnoten\u00e9') +\n          '<\/span>' +\n\n        '<\/div>';\n\n    });\n\n\n    el.table.innerHTML=html;\n\n  }\n\n\n  \/* =====================================================\n  DATA BRIDGE\n  ===================================================== *\/\n\n  function renderBridge(){\n\n    const acts=allActs().filter(function(a){\n      return a.visited;\n    });\n\n\n    const strong=acts\n      .filter(function(a){\n\n        return (\n          a.r.cls==='diff' ||\n          a.r.cls==='key'\n        );\n\n      })\n      .sort(function(a,b){\n        return b.score-a.score;\n      });\n\n\n    const weak=acts\n      .filter(function(a){\n\n        return (\n          a.r.cls==='waste' ||\n          a.v<3 ||\n          (a.c>=4 && a.v<=3)\n        );\n\n      })\n      .sort(function(a,b){\n\n        return a.score-b.score;\n\n      });\n\n\n    if(strong.length){\n\n      el.strong.innerHTML=\n        strong.slice(0,6).map(function(a){\n\n          return (\n            '<li><strong>'+a.name+'<\/strong> \u2014 '+\n            a.r.txt+\n            ', hodnota '+a.v.toFixed(1)+\n            ', n\u00e1klady '+a.c.toFixed(1)+\n            '.<\/li>'\n          );\n\n        }).join('');\n\n    }\n    else{\n\n      el.strong.innerHTML=\n        '<li>Zatia\u013e nebola identifikovan\u00e1 aktivita s v\u00fdrazne nadpriemern\u00fdm hodnotov\u00fdm profilom.<\/li>';\n\n    }\n\n\n    if(weak.length){\n\n      el.weak.innerHTML=\n        weak.slice(0,6).map(function(a){\n\n          return (\n            '<li><strong>'+a.name+'<\/strong> \u2014 '+\n            'hodnota '+a.v.toFixed(1)+\n            ', n\u00e1klady '+a.c.toFixed(1)+\n            '. Preverte pr\u00ed\u010diny a mo\u017enosti optimaliz\u00e1cie.<\/li>'\n          );\n\n        }).join('');\n\n    }\n    else{\n\n      el.weak.innerHTML=\n        '<li>Zatia\u013e nebolo identifikovan\u00e9 v\u00fdrazn\u00e9 slab\u00e9 miesto.<\/li>';\n\n    }\n\n  }\n\n\n  \/* =====================================================\n  PDF\n  ===================================================== *\/\n\n  function createPdf(){\n\n    if(visited.size!==ACT.length){\n\n      alert(\n        'Pred vytvoren\u00edm PDF dokon\u010dite hodnotenie v\u0161etk\u00fdch 9 aktiv\u00edt.'\n      );\n\n      return;\n    }\n\n\n    if(\n      typeof html2canvas==='undefined' ||\n      !window.jspdf\n    ){\n\n      alert(\n        'PDF kni\u017enica sa nepodarila na\u010d\u00edta\u0165. Obnovte str\u00e1nku a sk\u00faste to znova.'\n      );\n\n      return;\n    }\n\n\n    const acts=allActs();\n\n    const diff=acts.filter(function(a){\n      return a.r.cls==='diff';\n    }).length;\n\n    const key=acts.filter(function(a){\n      return a.r.cls==='key';\n    }).length;\n\n    const waste=acts.filter(function(a){\n      return a.r.cls==='waste';\n    }).length;\n\n    const totalScore=Math.round(\n      acts.reduce(function(sum,a){\n        return sum+a.score;\n      },0)\/acts.length\n    );\n\n\n    const strong=acts\n      .filter(function(a){\n        return a.r.cls==='diff' || a.r.cls==='key';\n      })\n      .sort(function(a,b){\n        return b.score-a.score;\n      });\n\n\n    const weak=acts\n      .filter(function(a){\n        return a.r.cls==='waste' || a.v<3 || (a.c>=4 && a.v<=3);\n      })\n      .sort(function(a,b){\n        return a.score-b.score;\n      });\n\n\n    const report=document.createElement('div');\n\n    report.style.position='fixed';\n    report.style.left='-10000px';\n    report.style.top='0';\n    report.style.width='794px';\n    report.style.background='#ffffff';\n    report.style.color='#111111';\n    report.style.padding='46px';\n    report.style.fontFamily='Arial, sans-serif';\n    report.style.lineHeight='1.5';\n\n\n    const rows=acts.map(function(a){\n\n      return (\n\n        '<div style=\"display:grid;grid-template-columns:45px 1fr 75px 75px 120px;gap:10px;padding:11px 8px;border-bottom:1px solid #eeeeee;font-size:12px;align-items:center;\">' +\n\n          '<div style=\"font-weight:800;\">'+a.num+'<\/div>' +\n\n          '<div style=\"font-weight:800;\">'+a.name+'<\/div>' +\n\n          '<div>'+a.v.toFixed(1)+'<\/div>' +\n\n          '<div>'+a.c.toFixed(1)+'<\/div>' +\n\n          '<div style=\"font-weight:800;color:#E8080F;\">'+a.r.txt+'<\/div>' +\n\n        '<\/div>'\n\n      );\n\n    }).join('');\n\n\n    const strongHtml=\n      strong.length\n        ? strong.map(function(a){\n\n            return (\n              '<li style=\"margin-bottom:7px;\"><strong>'+\n              a.name+\n              '<\/strong> \u2014 '+\n              a.r.txt+\n              ', hodnota '+\n              a.v.toFixed(1)+\n              ', n\u00e1klady '+\n              a.c.toFixed(1)+\n              '.<\/li>'\n            );\n\n          }).join('')\n        : '<li>Nebol identifikovan\u00fd v\u00fdrazn\u00fd kandid\u00e1t.<\/li>';\n\n\n    const weakHtml=\n      weak.length\n        ? weak.map(function(a){\n\n            return (\n              '<li style=\"margin-bottom:7px;\"><strong>'+\n              a.name+\n              '<\/strong> \u2014 hodnota '+\n              a.v.toFixed(1)+\n              ', n\u00e1klady '+\n              a.c.toFixed(1)+\n              '.<\/li>'\n            );\n\n          }).join('')\n        : '<li>Nebolo identifikovan\u00e9 v\u00fdrazn\u00e9 slab\u00e9 miesto.<\/li>';\n\n\n    report.innerHTML=\n\n      '<div style=\"background:#080808;color:white;padding:34px;border-radius:20px;margin-bottom:28px;\">' +\n\n        '<div style=\"font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#E8080F;margin-bottom:12px;\">' +\n          'STRATE9Y\u00ae \u00b7 Strategick\u00e1 anal\u00fdza' +\n        '<\/div>' +\n\n        '<div style=\"font-size:34px;font-weight:900;line-height:1.05;margin-bottom:12px;\">' +\n          'Porterov hodnotov\u00fd re\u0165azec' +\n        '<\/div>' +\n\n        '<div style=\"font-size:14px;color:#cccccc;\">' +\n          'Preh\u013ead vytv\u00e1ranej hodnoty a n\u00e1kladovej n\u00e1ro\u010dnosti intern\u00fdch aktiv\u00edt' +\n        '<\/div>' +\n\n      '<\/div>' +\n\n\n      '<div style=\"display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:28px;\">' +\n\n        '<div style=\"border:1px solid #e5e5e5;border-radius:14px;padding:16px;text-align:center;\">' +\n          '<div style=\"font-size:28px;font-weight:900;color:#E8080F;\">'+diff+'<\/div>' +\n          '<div style=\"font-size:9px;text-transform:uppercase;color:#777;font-weight:800;\">Diferenci\u00e1cia<\/div>' +\n        '<\/div>' +\n\n        '<div style=\"border:1px solid #e5e5e5;border-radius:14px;padding:16px;text-align:center;\">' +\n          '<div style=\"font-size:28px;font-weight:900;color:#E8080F;\">'+key+'<\/div>' +\n          '<div style=\"font-size:9px;text-transform:uppercase;color:#777;font-weight:800;\">K\u013e\u00fa\u010dov\u00e9<\/div>' +\n        '<\/div>' +\n\n        '<div style=\"border:1px solid #e5e5e5;border-radius:14px;padding:16px;text-align:center;\">' +\n          '<div style=\"font-size:28px;font-weight:900;color:#E8080F;\">'+waste+'<\/div>' +\n          '<div style=\"font-size:9px;text-transform:uppercase;color:#777;font-weight:800;\">Plytvanie<\/div>' +\n        '<\/div>' +\n\n        '<div style=\"border:1px solid #e5e5e5;border-radius:14px;padding:16px;text-align:center;\">' +\n          '<div style=\"font-size:28px;font-weight:900;color:#E8080F;\">'+totalScore+'<\/div>' +\n          '<div style=\"font-size:9px;text-transform:uppercase;color:#777;font-weight:800;\">Sk\u00f3re hodnoty<\/div>' +\n        '<\/div>' +\n\n      '<\/div>' +\n\n\n      '<div style=\"font-size:21px;font-weight:900;margin-bottom:12px;\">Preh\u013ead aktiv\u00edt<\/div>' +\n\n      '<div style=\"display:grid;grid-template-columns:45px 1fr 75px 75px 120px;gap:10px;background:#080808;color:white;border-radius:10px;padding:10px 8px;font-size:10px;font-weight:800;text-transform:uppercase;\">' +\n        '<div>Akt.<\/div>' +\n        '<div>Aktivita<\/div>' +\n        '<div>Hodnota<\/div>' +\n        '<div>N\u00e1klady<\/div>' +\n        '<div>Profil<\/div>' +\n      '<\/div>' +\n\n      '<div style=\"margin-bottom:30px;\">'+rows+'<\/div>' +\n\n\n      '<div style=\"display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:30px;\">' +\n\n        '<div style=\"background:#f7f7f7;border-radius:16px;padding:20px;\">' +\n\n          '<div style=\"font-size:17px;font-weight:900;color:#E8080F;margin-bottom:10px;\">' +\n            'VRIO kandid\u00e1ti' +\n          '<\/div>' +\n\n          '<ul style=\"padding-left:18px;margin:0;font-size:12px;color:#555;\">' +\n            strongHtml +\n          '<\/ul>' +\n\n        '<\/div>' +\n\n\n        '<div style=\"background:#f7f7f7;border-radius:16px;padding:20px;\">' +\n\n          '<div style=\"font-size:17px;font-weight:900;color:#E8080F;margin-bottom:10px;\">' +\n            'SWOT \u2013 intern\u00e9 slabiny' +\n          '<\/div>' +\n\n          '<ul style=\"padding-left:18px;margin:0;font-size:12px;color:#555;\">' +\n            weakHtml +\n          '<\/ul>' +\n\n        '<\/div>' +\n\n      '<\/div>' +\n\n\n      '<div style=\"background:#080808;color:white;border-radius:16px;padding:24px;\">' +\n\n        '<div style=\"font-size:18px;font-weight:900;margin-bottom:8px;\">' +\n          'Ako s v\u00fdsledkom pracova\u0165?' +\n        '<\/div>' +\n\n        '<div style=\"font-size:12px;color:#cccccc;line-height:1.7;\">' +\n          'Aktivity s vysokou hodnotou pre z\u00e1kazn\u00edka \u010falej preverujte pomocou VRIO anal\u00fdzy. ' +\n          'Pri aktivit\u00e1ch s vysok\u00fdmi n\u00e1kladmi a n\u00edzkou hodnotou h\u013eadajte mo\u017enosti zjednodu\u0161enia, automatiz\u00e1cie, outsourcingu alebo odstr\u00e1nenia. ' +\n          'V\u00fdsledky preneste do SWOT anal\u00fdzy a prepojte ich s \u010fal\u0161\u00edmi strategick\u00fdmi rozhodnutiami firmy.' +\n        '<\/div>' +\n\n      '<\/div>' +\n\n\n      '<div style=\"margin-top:20px;font-size:10px;color:#999;text-align:center;\">' +\n        'STRATE9Y\u00ae \u00b7 strate9y.com \u00b7 N\u00e1stroj na podporu strategick\u00e9ho rozhodovania' +\n      '<\/div>';\n\n\n    document.body.appendChild(report);\n\n\n    html2canvas(report,{\n      scale:2,\n      backgroundColor:'#ffffff',\n      useCORS:true\n    })\n    .then(function(canvas){\n\n      const imageData=canvas.toDataURL(\n        'image\/jpeg',\n        .95\n      );\n\n\n      const jsPDF=window.jspdf.jsPDF;\n\n      const pdf=new jsPDF(\n        'p',\n        'mm',\n        'a4'\n      );\n\n\n      const pageWidth=210;\n      const pageHeight=297;\n      const margin=10;\n\n      const imgWidth=\n        pageWidth-(margin*2);\n\n      const imgHeight=\n        canvas.height*imgWidth\/canvas.width;\n\n\n      let heightLeft=imgHeight;\n\n      let position=margin;\n\n\n      pdf.addImage(\n        imageData,\n        'JPEG',\n        margin,\n        position,\n        imgWidth,\n        imgHeight\n      );\n\n\n      heightLeft-=\n        pageHeight-(margin*2);\n\n\n      while(heightLeft>0){\n\n        pdf.addPage();\n\n        position=\n          margin-(imgHeight-heightLeft);\n\n\n        pdf.addImage(\n          imageData,\n          'JPEG',\n          margin,\n          position,\n          imgWidth,\n          imgHeight\n        );\n\n\n        heightLeft-=\n          pageHeight-(margin*2);\n\n      }\n\n\n      pdf.save(\n        'STRATE9Y-Porterov-hodnotovy-retazec.pdf'\n      );\n\n\n      report.remove();\n\n    })\n    .catch(function(error){\n\n      console.error(error);\n\n      report.remove();\n\n      alert(\n        'PDF sa nepodarilo vytvori\u0165. Obnovte str\u00e1nku a sk\u00faste export znova.'\n      );\n\n    });\n\n  }\n\n\n  \/* =====================================================\n  RENDER\n  ===================================================== *\/\n\n  function renderAll(){\n\n    renderStepStates();\n\n    renderPanel();\n\n    renderProgress();\n\n    renderSummary();\n\n    renderMap();\n\n    renderTable();\n\n    renderBridge();\n\n  }\n\n\n  \/* =====================================================\n  EVENTS\n  ===================================================== *\/\n\n  el.exportBtn.addEventListener(\n    'click',\n    createPdf\n  );\n\n  el.exportBig.addEventListener(\n    'click',\n    createPdf\n  );\n\n\n  \/* =====================================================\n  INIT\n  ===================================================== *\/\n\n  buildSteps();\n\n  renderAll();\n\n}\n\n\n\/* WordPress \/ cached pages *\/\nif(document.readyState==='loading'){\n\n  document.addEventListener(\n    'DOMContentLoaded',\n    startChain\n  );\n\n}\nelse{\n\n  startChain();\n\n}\n\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>STRATE9Y\u00ae n\u00e1stroje \u00b7 Porterov hodnotov\u00fd re\u0165azec Porterov hodnotov\u00fd re\u0165azec: interakt\u00edvna anal\u00fdza va\u0161ej firmy. Analyzujte prim\u00e1rne aj podporn\u00e9 aktivity firmy. Pri [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":33986,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_eb_attr":"","_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-35583","page","type-page","status-publish","hentry"],"acf":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Hana Krchov\u00e1","author_link":"https:\/\/strate9y.com\/sk\/autor\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"STRATE9Y\u00ae n\u00e1stroje \u00b7 Porterov hodnotov\u00fd re\u0165azec Porterov hodnotov\u00fd re\u0165azec: interakt\u00edvna anal\u00fdza va\u0161ej firmy. Analyzujte prim\u00e1rne aj podporn\u00e9 aktivity firmy. Pri [&hellip;]","_links":{"self":[{"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/pages\/35583","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/comments?post=35583"}],"version-history":[{"count":0,"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/pages\/35583\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/pages\/33986"}],"wp:attachment":[{"href":"https:\/\/strate9y.com\/sk\/wp-json\/wp\/v2\/media?parent=35583"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}