{"id":6718,"date":"2026-06-22T11:34:08","date_gmt":"2026-06-22T10:34:08","guid":{"rendered":"https:\/\/smartgifty.com\/pricing-detailed\/"},"modified":"2026-08-26T11:55:06","modified_gmt":"2026-08-26T10:55:06","slug":"pricing-detailed","status":"publish","type":"page","link":"https:\/\/smartgifty.com\/cs\/pricing-detailed\/","title":{"rendered":"Detailed Pricing"},"content":{"rendered":"\n<!-- SmartGifty 2026 \u2013 Full pricing + pricing calculator + revenue calculator \u2013 \u010ce\u0161tina (cs). Embeddable blok, 2026-08-26. -->\n<div class=\"cenik-calc-merged\">\n<style>\n  \/* zlij sekcije od roba do roba: brez zaobljenih robov in belih re\u017e *\/\n  .cenik-calc-merged .sg-calculator,\n  .cenik-calc-merged .calc-section{border-radius:0;margin:0;}\n<\/style>\n\n<!-- SmartGifty pricing 2026 \u2013 DETAILED version (prices + all descriptions). All scoped under .sg-cenik. -->\n<section class=\"sg-cenik\" aria-label=\"SmartGifty cen\u00edk, bal\u00ed\u010dky a podrobn\u00e9 popisy\">\n<style>\n.sg-cenik{\n  --sg-orange:#f39704; --sg-orange-d:#d48302;\n  --sg-purple:#2c007c; --sg-purple-light:#592ddf;\n  --sg-dark:#23035e; --sg-text:#414141; --sg-bg:#f7f5fb;\n  font-family:\"Archivo\",-apple-system,\"Segoe UI\",sans-serif;\n  color:var(--sg-text);\n  position:relative;\n  padding:64px 20px 80px;\n  background:\n    radial-gradient(120% 90% at 15% 0%, rgba(89,45,223,.10) 0%, rgba(89,45,223,0) 55%),\n    radial-gradient(120% 90% at 100% 20%, rgba(243,151,4,.10) 0%, rgba(243,151,4,0) 50%),\n    linear-gradient(180deg,#ffffff 0%, var(--sg-bg) 100%);\n  background-size:200% 200%,200% 200%,100% 100%;\n  animation:sgBgShift 22s ease-in-out infinite alternate;\n  overflow:hidden;\n  box-sizing:border-box;\n}\n.sg-cenik *,.sg-cenik *::before,.sg-cenik *::after{box-sizing:border-box;}\n@keyframes sgBgShift{0%{background-position:0% 0%,100% 0%,0 0}100%{background-position:30% 60%,70% 40%,0 0}}\n\n.sg-cenik .sg-wrap{max-width:1120px;margin:0 auto;}\n\n\/* --- header --- *\/\n.sg-cenik .sg-head{text-align:center;margin-bottom:48px;}\n.sg-cenik .sg-eyebrow{\n  display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;\n  text-transform:uppercase;color:var(--sg-purple-light);\n  background:rgba(89,45,223,.10);padding:7px 16px;border-radius:999px;margin-bottom:18px;\n}\n.sg-cenik h2.sg-title{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;\n  font-size:clamp(28px,4.2vw,44px);line-height:1.12;margin:0 0 14px;\n  color:var(--sg-dark);font-weight:800;\n}\n.sg-cenik h2.sg-title em{font-style:normal;color:var(--sg-orange);}\n.sg-cenik .sg-sub{font-size:17px;max-width:620px;margin:0 auto;color:#6a6580;}\n\n\/* --- balon\u010dki --- *\/\n.sg-cenik .sg-cards{\n  display:flex;flex-wrap:wrap;gap:24px;justify-content:center;align-items:stretch;\n  margin-bottom:22px;\n}\n.sg-cenik .sg-card{\n  flex:1 1 300px;max-width:350px;position:relative;display:flex;flex-direction:column;\n  background:#fff;border:1px solid #ece8f5;border-radius:22px;\n  padding:34px 28px 30px;\n  box-shadow:0 10px 30px -18px rgba(44,0,124,.35);\n  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s;\n}\n.sg-cenik .sg-card:hover{\n  transform:translateY(-8px);\n  box-shadow:0 26px 48px -22px rgba(44,0,124,.45);\n  border-color:var(--sg-orange);\n}\n.sg-cenik .sg-card .sg-pkg{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;\n  font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;\n  color:var(--sg-purple-light);margin-bottom:14px;\n}\n.sg-cenik .sg-card .sg-desc{font-size:15px;line-height:1.5;color:#5a5570;min-height:66px;margin-bottom:18px;}\n.sg-cenik .sg-card .sg-price{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;\n  font-size:42px;font-weight:800;color:var(--sg-dark);line-height:1;letter-spacing:-.01em;\n}\n.sg-cenik .sg-card .sg-price small{font-size:22px;font-weight:700;margin-left:3px;color:var(--sg-orange);}\n.sg-cenik .sg-card .sg-price-note{font-size:12.5px;color:#8a86a0;margin:6px 0 22px;text-transform:uppercase;letter-spacing:.05em;}\n.sg-cenik .sg-card ul{list-style:none;margin:0;padding:18px 0 0;border-top:1px dashed #e3def0;display:grid;gap:11px;}\n.sg-cenik .sg-card li{position:relative;padding-left:28px;font-size:14.5px;line-height:1.4;color:#4a4660;}\n.sg-cenik .sg-card li::before{\n  content:\"\";position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;\n  background:rgba(243,151,4,.16) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23f39704' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'\/%3E%3C\/svg%3E\") center\/12px no-repeat;\n}\n\n\/* PRO poudarjen *\/\n.sg-cenik .sg-card.is-featured{\n  background:linear-gradient(160deg,var(--sg-purple) 0%,var(--sg-dark) 100%);\n  border:none;transform:translateY(-12px);\n  box-shadow:0 30px 55px -24px rgba(44,0,124,.7);\n}\n.sg-cenik .sg-card.is-featured:hover{transform:translateY(-18px);}\n.sg-cenik .sg-card.is-featured .sg-pkg{color:var(--sg-orange);}\n.sg-cenik .sg-card.is-featured .sg-desc,\n.sg-cenik .sg-card.is-featured li{color:#d9d2f2;}\n.sg-cenik .sg-card.is-featured .sg-price{color:#fff;}\n.sg-cenik .sg-card.is-featured .sg-price small{color:var(--sg-orange);}\n.sg-cenik .sg-card.is-featured .sg-price-note{color:#a99fd6;}\n.sg-cenik .sg-card.is-featured ul{border-top-color:rgba(255,255,255,.2);}\n.sg-cenik .sg-card.is-featured li::before{\n  background:rgba(243,151,4,.25) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23f39704' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'\/%3E%3C\/svg%3E\") center\/12px no-repeat;\n}\n.sg-cenik .sg-badge{\n  position:absolute;top:-14px;left:50%;transform:translateX(-50%);\n  background:var(--sg-orange);color:#fff;font-size:12px;font-weight:800;\n  letter-spacing:.06em;text-transform:uppercase;padding:7px 16px;border-radius:999px;\n  white-space:nowrap;box-shadow:0 8px 18px -6px rgba(243,151,4,.7);\n  animation:sgPulse 2.4s ease-in-out infinite;\n}\n@keyframes sgPulse{0%,100%{box-shadow:0 8px 18px -6px rgba(243,151,4,.7)}50%{box-shadow:0 8px 26px 0 rgba(243,151,4,.55)}}\n\n.sg-cenik .sg-vat{text-align:center;font-size:13px;color:#8a86a0;margin:0 0 64px;}\n\n\/* --- tabela --- *\/\n.sg-cenik .sg-table-head{text-align:center;margin-bottom:30px;}\n.sg-cenik .sg-table-head h3{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;\n  font-size:clamp(22px,3vw,32px);color:var(--sg-dark);margin:0 0 8px;font-weight:800;\n}\n.sg-cenik .sg-table-head p{font-size:15px;color:#6a6580;margin:0;}\n.sg-cenik .sg-table-scroll{overflow-x:auto;border-radius:18px;box-shadow:0 14px 40px -22px rgba(44,0,124,.4);}\n.sg-cenik table{\n  width:100%;min-width:560px;border-collapse:collapse;background:#fff;font-size:14.5px;\n}\n.sg-cenik thead th{\n  background:linear-gradient(160deg,var(--sg-purple) 0%,var(--sg-dark) 100%);\n  color:#fff;font-weight:700;padding:18px 16px;text-align:center;\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;\n}\n.sg-cenik thead th:first-child{text-align:left;width:46%;}\n.sg-cenik thead th .col-price{display:block;font-size:13px;font-weight:600;color:var(--sg-orange);margin-top:3px;}\n.sg-cenik tbody td{padding:13px 16px;border-bottom:1px solid #f0edf7;text-align:center;}\n.sg-cenik tbody td:first-child{text-align:left;color:#4a4660;padding-right:10px;}\n.sg-cenik tbody tr:hover td{background:#faf8ff;}\n.sg-cenik tr.sg-band td{\n  background:#f3f0fb;font-weight:800;text-transform:uppercase;letter-spacing:.05em;\n  font-size:12.5px;color:var(--sg-purple-light);padding:14px 16px;text-align:left;\n}\n.sg-cenik tr.sg-band td .band-tag{font-weight:600;text-transform:none;letter-spacing:0;color:#9a93b8;margin-left:8px;}\n.sg-cenik .ico{display:inline-flex;width:26px;height:26px;border-radius:50%;align-items:center;justify-content:center;transform:scale(.5);opacity:0;transition:transform .35s cubic-bezier(.2,1.4,.5,1),opacity .3s;}\n.sg-cenik tr.is-visible .ico{transform:scale(1);opacity:1;}\n.sg-cenik .ico.yes{background:rgba(243,151,4,.16);color:var(--sg-orange);}\n.sg-cenik .ico.no{background:#f0eef5;color:#c5c0d4;}\n.sg-cenik .ico svg{width:15px;height:15px;}\n\n\/* --- info \"i\" sidrna povezava --- *\/\n.sg-cenik .sg-fn{display:inline-flex;align-items:center;gap:9px;}\n.sg-cenik a.sg-info{\n  flex:0 0 auto;width:19px;height:19px;border-radius:50%;border:1.5px solid var(--sg-purple-light);\n  background:#fff;color:var(--sg-purple-light);font:italic 700 12px\/1 \"Archivo\",serif;\n  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;\n  transition:background .2s,color .2s,border-color .2s,transform .2s;\n}\n.sg-cenik a.sg-info:hover{background:var(--sg-orange);border-color:var(--sg-orange);color:#fff;transform:scale(1.12);}\n\n\/* --- podroben opis --- *\/\n.sg-cenik .sg-desc-section{margin-top:72px;}\n.sg-cenik .sg-od-list{max-width:880px;margin:0 auto;display:grid;gap:18px;}\n.sg-cenik .sg-od-group{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;font-weight:800;\n  font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--sg-purple-light);\n  margin:26px 0 2px;padding-left:4px;\n}\n.sg-cenik .sg-od-group:first-child{margin-top:0;}\n.sg-cenik .sg-od{\n  position:relative;background:#fff;border:1px solid #ece8f5;border-left:4px solid var(--sg-orange);\n  border-radius:16px;padding:24px 26px;scroll-margin-top:24px;\n  box-shadow:0 10px 30px -20px rgba(44,0,124,.4);\n}\n.sg-cenik .sg-od.b{border-left-color:var(--sg-purple-light);}\n.sg-cenik .sg-od.c{border-left-color:var(--sg-dark);}\n.sg-cenik .sg-od.x{border-left-color:#9a93b8;}\n.sg-cenik .sg-od-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;}\n.sg-cenik .sg-od h4{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;font-weight:800;\n  font-size:18px;color:var(--sg-dark);margin:0;\n}\n.sg-cenik .sg-od-tag{\n  font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;\n  background:rgba(243,151,4,.14);color:var(--sg-orange-d);padding:4px 10px;border-radius:999px;\n}\n.sg-cenik .sg-od.b .sg-od-tag{background:rgba(89,45,223,.12);color:var(--sg-purple-light);}\n.sg-cenik .sg-od.c .sg-od-tag{background:rgba(35,3,94,.10);color:var(--sg-dark);}\n.sg-cenik .sg-od.x .sg-od-tag{background:#efedf5;color:#7a749a;}\n.sg-cenik .sg-od p{margin:0 0 10px;font-size:14.5px;line-height:1.6;color:#54506b;}\n.sg-cenik .sg-od p:last-child{margin-bottom:0;}\n.sg-cenik .sg-od ul{margin:6px 0 12px;padding:0;list-style:none;display:grid;gap:7px;}\n.sg-cenik .sg-od ul li{position:relative;padding-left:22px;font-size:14px;line-height:1.5;color:#54506b;}\n.sg-cenik .sg-od ul li::before{content:\"\";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:var(--sg-orange);}\n.sg-cenik .sg-od.b ul li::before{background:var(--sg-purple-light);}\n.sg-cenik .sg-od.c ul li::before{background:var(--sg-dark);}\n.sg-cenik .sg-od .sg-sub-h{font-weight:700;color:var(--sg-dark);margin:14px 0 4px;font-size:14.5px;}\n.sg-cenik .sg-od .sg-price-tag{\n  display:inline-block;background:var(--sg-dark);color:#fff;font-weight:700;font-size:13px;\n  padding:5px 12px;border-radius:8px;margin-top:6px;\n}\n.sg-cenik .sg-back{\n  display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-size:12.5px;font-weight:700;\n  color:var(--sg-purple-light);text-decoration:none;\n}\n.sg-cenik .sg-back:hover{color:var(--sg-orange);}\n.sg-cenik .sg-od.sg-flash{animation:sgFlash 1.6s ease;}\n@keyframes sgFlash{\n  0%{box-shadow:0 0 0 0 rgba(243,151,4,.55);background:#fff8ee;}\n  60%{box-shadow:0 0 0 6px rgba(243,151,4,0);background:#fff8ee;}\n  100%{box-shadow:0 10px 30px -20px rgba(44,0,124,.4);background:#fff;}\n}\n.sg-cenik .sg-foot{text-align:center;font-size:13px;color:#8a86a0;margin:34px 0 0;}\n\n\/* --- CTA dodatne storitve --- *\/\n.sg-cenik .sg-extra-cta{\n  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;\n  max-width:980px;margin:28px auto 0;padding:26px 30px;border-radius:20px;text-decoration:none;\n  background:linear-gradient(115deg,var(--sg-purple) 0%,var(--sg-dark) 70%);\n  box-shadow:0 22px 50px -24px rgba(44,0,124,.7);\n  position:relative;overflow:hidden;\n  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;\n}\n.sg-cenik .sg-extra-cta::after{\n  content:\"\";position:absolute;right:-40px;top:-60px;width:220px;height:220px;border-radius:50%;\n  background:radial-gradient(circle,rgba(243,151,4,.35) 0%,rgba(243,151,4,0) 70%);pointer-events:none;\n}\n.sg-cenik .sg-extra-cta:hover{transform:translateY(-4px);box-shadow:0 30px 60px -26px rgba(44,0,124,.8);}\n.sg-cenik .sg-extra-txt{display:flex;flex-direction:column;gap:6px;min-width:240px;flex:1 1 320px;position:relative;z-index:1;}\n.sg-cenik .sg-extra-txt strong{\n  font-family:\"Gilroy Extra Bold\",\"Archivo\",sans-serif;font-weight:800;font-size:19px;color:#fff;\n}\n.sg-cenik .sg-extra-txt span{font-size:14.5px;line-height:1.5;color:#cfc6ee;}\n.sg-cenik .sg-extra-btn{\n  flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;position:relative;z-index:1;\n  background:var(--sg-orange);color:#fff;font-weight:800;font-size:15px;padding:14px 24px;border-radius:999px;\n  box-shadow:0 10px 22px -8px rgba(243,151,4,.7);transition:background .2s,transform .2s;\n}\n.sg-cenik .sg-extra-cta:hover .sg-extra-btn{background:var(--sg-orange-d);}\n.sg-cenik .sg-extra-btn svg{width:18px;height:18px;transition:transform .25s;}\n.sg-cenik .sg-extra-cta:hover .sg-extra-btn svg{transform:translateX(4px);}\n@media(max-width:620px){\n  .sg-cenik .sg-extra-cta{padding:22px;}\n  .sg-cenik .sg-extra-btn{width:100%;justify-content:center;}\n}\n\n\/* scroll-reveal *\/\n.sg-cenik .reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1);}\n.sg-cenik .reveal.is-visible{opacity:1;transform:none;}\n.sg-cenik .sg-card.is-featured.reveal{transform:translateY(26px);}\n.sg-cenik .sg-card.is-featured.reveal.is-visible{transform:translateY(-12px);}\n\n@media(max-width:760px){\n  .sg-cenik .sg-card,.sg-cenik .sg-card.is-featured{transform:none;max-width:420px;}\n  .sg-cenik .sg-card.is-featured.reveal.is-visible{transform:none;}\n  .sg-cenik .sg-od{padding:20px 18px;}\n}\n@media(prefers-reduced-motion:reduce){\n  .sg-cenik,.sg-cenik *{animation:none!important;}\n  .sg-cenik .reveal{opacity:1;transform:none;}\n  .sg-cenik .ico{opacity:1;transform:none;}\n}\n<\/style>\n\n<div class=\"sg-wrap\">\n\n  <div class=\"sg-head\">\n    <span class=\"sg-eyebrow reveal\">Cen\u00edk 2026<\/span>\n    <h2 class=\"sg-title reveal\">Vyberte si sv\u016fj bal\u00ed\u010dek <em>SmartGifty<\/em> <\/h2>\n    <p class=\"sg-sub reveal\">Syst\u00e9m d\u00e1rkov\u00fdch karet pro n\u00e1kupn\u00ed centra \u2013 t\u0159i bal\u00ed\u010dky p\u0159izp\u016fsoben\u00e9 va\u0161im pot\u0159eb\u00e1m.<\/p>\n  <\/div>\n\n  <!-- BALON\u010cKI -->\n  <div class=\"sg-cards\">\n\n    <div class=\"sg-card reveal\" style=\"transition-delay:.05s\">\n      <div class=\"sg-pkg\">Basic<\/div>\n      <p class=\"sg-desc\">Va\u0161e instance na sd\u00edlen\u00e9m serveru SmartGifty \u2013 rychl\u00fd a jednoduch\u00fd vstup do syst\u00e9mu d\u00e1rkov\u00fdch karet.<\/p>\n      <div class=\"sg-price\">500&nbsp;<small>\u20ac<\/small><\/div>\n      <div class=\"sg-price-note\">Jednor\u00e1zov\u00fd poplatek za nasazen\u00ed<\/div>\n      <ul>\n        <li>V\u0161echny 3 moduly (informa\u010dn\u00ed pult, administr\u00e1tor, n\u00e1jemce)<\/li>\n        <li>Integrace plateb a API propojen\u00ed<\/li>\n        <li>E-mailov\u00e1 podpora 7 dn\u00ed v t\u00fddnu<\/li>\n      <\/ul>\n    <\/div>\n\n    <div class=\"sg-card is-featured reveal\" style=\"transition-delay:.15s\">\n      <span class=\"sg-badge\">Nejobl\u00edben\u011bj\u0161\u00ed<\/span>\n      <div class=\"sg-pkg\">Pro<\/div>\n      <p class=\"sg-desc\">Samostatn\u00e1 instance na vlastn\u00edm serveru \u2013 pln\u00e1 nez\u00e1vislost a \u00fapravy na m\u00edru.<\/p>\n      <div class=\"sg-price\">3 000&nbsp;<small>\u20ac<\/small><\/div>\n      <div class=\"sg-price-note\">Jednor\u00e1zov\u00fd poplatek za nasazen\u00ed<\/div>\n      <ul>\n        <li>Vlastn\u00ed server \u2013 pln\u00e1 nez\u00e1vislost<\/li>\n        <li>\u00daprava u\u017eivatelsk\u00e9ho rozhran\u00ed<\/li>\n        <li>Integrace s backendov\u00fdmi syst\u00e9my (ERP, BI\u2026)<\/li>\n        <li>E-mailov\u00e1 a online podpora<\/li>\n      <\/ul>\n    <\/div>\n\n    <div class=\"sg-card reveal\" style=\"transition-delay:.25s\">\n      <div class=\"sg-pkg\">Advanced<\/div>\n      <p class=\"sg-desc\">V\u0161e z bal\u00ed\u010dku Pro, roz\u0161\u00ed\u0159en\u00e9 o onboarding mana\u017eera, e-shop a pokro\u010dilou analytiku.<\/p>\n      <div class=\"sg-price\">5 900&nbsp;<small>\u20ac<\/small><\/div>\n      <div class=\"sg-price-note\">Jednor\u00e1zov\u00fd poplatek za nasazen\u00ed<\/div>\n      <ul>\n        <li>Onboarding mana\u017eer<\/li>\n        <li>E-shop (webov\u00e1 \u0161ablona)<\/li>\n        <li>BI reporty a AI analytika<\/li>\n        <li>Marketingov\u00e9 poradenstv\u00ed<\/li>\n      <\/ul>\n    <\/div>\n\n  <\/div>\n  <p class=\"sg-vat reveal\">V\u0161echny ceny jsou bez DPH.<\/p>\n\n  <!-- TABELA -->\n  <div class=\"sg-table-head\" id=\"sg-tabela\">\n    <h3 class=\"reveal\">Co obsahuje jednotliv\u00fd bal\u00ed\u010dek<\/h3>\n    <p class=\"reveal\">P\u0159ehled funkc\u00ed podle bal\u00ed\u010dku. Klikn\u011bte na <strong>i<\/strong> pro podrobn\u00fd popis.<\/p>\n  <\/div>\n\n  <div class=\"sg-table-scroll reveal\">\n    <table>\n      <thead>\n        <tr>\n          <th>Funkce<\/th>\n          <th>Basic<span class=\"col-price\">500 \u20ac<\/span><\/th>\n          <th>Pro<span class=\"col-price\">3.000 \u20ac<\/span><\/th>\n          <th>Advanced<span class=\"col-price\">5.900 \u20ac<\/span><\/th>\n        <\/tr>\n      <\/thead>\n      <tbody>\n        <!-- Sklop A -->\n        <tr class=\"sg-band\"><td colspan=\"4\">Zahrnuto ve v\u0161ech bal\u00ed\u010dc\u00edch <span class=\"band-tag\">\u2013 Basic, Pro, Advanced<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Nasazen\u00ed centra a onboarding modul<\/span><a class=\"sg-info\" href=\"#opis-postavitev\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Funkce \u2013 3 moduly<\/span><a class=\"sg-info\" href=\"#opis-moduli\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Integrace plateb (v\u00edce zp\u016fsob\u016f uplatn\u011bn\u00ed)<\/span><a class=\"sg-info\" href=\"#opis-placila\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>V\u00edce typ\u016f API propojen\u00ed<\/span><a class=\"sg-info\" href=\"#opis-api\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>V\u00edcejazy\u010dn\u00e1 podpora<\/span><a class=\"sg-info\" href=\"#opis-jeziki\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Integrovan\u00e1 Google a Apple pen\u011b\u017eenka<\/span><a class=\"sg-info\" href=\"#opis-denarnica\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Ochrana serveru a pravideln\u00e9 aktualizace<\/span><a class=\"sg-info\" href=\"#opis-zascita\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>E-mailov\u00e1 podpora 7 dn\u00ed v t\u00fddnu<\/span><a class=\"sg-info\" href=\"#opis-email\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>P\u00edsemn\u00e9 a video n\u00e1vody k pou\u017eit\u00ed<\/span><a class=\"sg-info\" href=\"#opis-navodila\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Dod\u00e1vka karet (PVC, ECO, pap\u00edr\u2026)<\/span><a class=\"sg-info\" href=\"#opis-tisk\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Soulad s GDPR<\/span><a class=\"sg-info\" href=\"#opis-gdpr\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n\n        <!-- Sklop B -->\n        <tr class=\"sg-band\"><td colspan=\"4\">Pro a Advanced <span class=\"band-tag\">\u2013 nad r\u00e1mec bal\u00ed\u010dku Basic<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>E-mailov\u00e1 nebo online podpora<\/span><a class=\"sg-info\" href=\"#opis-podpora\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Nasazen\u00ed samostatn\u00e9 entity (vlastn\u00ed instance)<\/span><a class=\"sg-info\" href=\"#opis-instanca\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Mo\u017enost zm\u011bny u\u017eivatelsk\u00e9ho rozhran\u00ed<\/span><a class=\"sg-info\" href=\"#opis-vmesnik\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Mo\u017enost p\u0159id\u00e1n\u00ed dal\u0161\u00edch funkc\u00ed<\/span><a class=\"sg-info\" href=\"#opis-dodatne-funkc\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Pomoc s pl\u00e1nov\u00e1n\u00edm proces\u016f<\/span><a class=\"sg-info\" href=\"#opis-procesi\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>\u0160kolen\u00ed<\/span><a class=\"sg-info\" href=\"#opis-izobrazevanje\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Integrace s backendov\u00fdmi syst\u00e9my (ERP, \u00fa\u010detnictv\u00ed, Loyalty, BI\u2026)<\/span><a class=\"sg-info\" href=\"#opis-zaledni\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Mo\u017enost v\u00fdvoje nov\u00fdch API<\/span><a class=\"sg-info\" href=\"#opis-novi-api\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>API pro statistiky<\/span><a class=\"sg-info\" href=\"#opis-api-statistika\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n\n        <!-- Sklop C -->\n        <tr class=\"sg-band\"><td colspan=\"4\">Pouze Advanced <span class=\"band-tag\">\u2013 nejvy\u0161\u0161\u00ed bal\u00ed\u010dek<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Onboarding mana\u017eer<\/span><a class=\"sg-info\" href=\"#opis-onboarding\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Web pro objedn\u00e1v\u00e1n\u00ed karet (webov\u00e1 \u0161ablona)<\/span><a class=\"sg-info\" href=\"#opis-spletna\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>BI reporty<\/span><a class=\"sg-info\" href=\"#opis-bi\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>AI analytika<\/span><a class=\"sg-info\" href=\"#opis-ai\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td><span class=\"sg-fn\"><span>Marketingov\u00e9 poradenstv\u00ed<\/span><a class=\"sg-info\" href=\"#opis-marketing\" aria-label=\"Zobrazit popis\">i<\/a><\/span><\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n      <\/tbody>\n    <\/table>\n  <\/div>\n  <p class=\"sg-foot\">V\u0161echny ceny jsou bez DPH.<\/p>\n\n  <!-- CTA: dodatne storitve -->\n  <a class=\"sg-extra-cta reveal\" href=\"#dodatne-opcije\">\n    <div class=\"sg-extra-txt\">\n      <strong>Pot\u0159ebujete v\u00edce, ne\u017e nab\u00edz\u00ed bal\u00ed\u010dek?<\/strong>\n      <span>Nab\u00edz\u00edme i dopl\u0148kov\u00e9 slu\u017eby, kter\u00e9 nejsou sou\u010d\u00e1st\u00ed bal\u00ed\u010dk\u016f \u2013 Giftomat, e-shop na m\u00edru, dal\u0161\u00ed centra a slu\u017eby v hodinov\u00fdch sazb\u00e1ch.<\/span>\n    <\/div>\n    <span class=\"sg-extra-btn\">Zobrazit dal\u0161\u00ed mo\u017enosti\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line><polyline points=\"12 5 19 12 12 19\"><\/polyline><\/svg>\n    <\/span>\n  <\/a>\n\n  <!-- PODROBEN OPIS -->\n  <div class=\"sg-desc-section\">\n    <div class=\"sg-table-head\">\n      <h3 class=\"reveal\">Podrobn\u00fd popis<\/h3>\n      <p class=\"reveal\">V\u0161echny funkce a slu\u017eby podrobn\u011b.<\/p>\n    <\/div>\n\n    <div class=\"sg-od-list\">\n\n      <div class=\"sg-od x reveal\" id=\"opis-karakteristike\">\n        <div class=\"sg-od-top\"><h4>Kl\u00ed\u010dov\u00e9 vlastnosti syst\u00e9mu<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <ul>\n          <li>Uzav\u0159en\u00fd syst\u00e9m d\u00e1rkov\u00fdch karet (closed-loop).<\/li>\n          <li>Fyzick\u00e1 i e-karta a e-pen\u011b\u017eenka (Apple \/ Google wallet).<\/li>\n          <li>Kybernetick\u00e1 bezpe\u010dnost a ochrana dat \u2013 proveden penetra\u010dn\u00ed test.<\/li>\n          <li>Data v re\u00e1ln\u00e9m \u010dase 24\/7 a postupn\u00e9 \u010derp\u00e1n\u00ed prost\u0159edk\u016f.<\/li>\n          <li>V\u00edce design\u016f karet, zanedbateln\u00e9 n\u00e1klady na kartu.<\/li>\n          <li>\u0160k\u00e1lovatelnost a mo\u017en\u00e9 integrace s backendov\u00fdmi syst\u00e9my.<\/li>\n          <li>Pen\u00edze na \u00fa\u010dtu centra, bez dal\u0161\u00edch transak\u010dn\u00edch poplatk\u016f.<\/li>\n        <\/ul>\n      <\/div>\n\n      <div class=\"sg-od-group reveal\">Zahrnuto ve v\u0161ech bal\u00ed\u010dc\u00edch<\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-postavitev\">\n        <div class=\"sg-od-top\"><h4>Nasazen\u00ed a konfigurace syst\u00e9mu<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>P\u0159\u00edprava syst\u00e9mu d\u00e1rkov\u00fdch karet SmartGifty, personalizace dokument\u016f a tiskov\u00fdch v\u00fdstup\u016f s \u00fadaji n\u00e1kupn\u00edho centra, p\u0159\u00edprava u\u017eivatelsk\u00fdch jmen a hesel pro v\u0161echny u\u017eivatele a n\u00e1jemce, p\u00edsemn\u00e9 a video n\u00e1vody v m\u00edstn\u00edm jazyce a podpora API propojen\u00ed pro uplatn\u011bn\u00ed u n\u00e1jemc\u016f.<\/p>\n        <p><strong>Basic:<\/strong> nasazen\u00ed va\u0161\u00ed instance na sd\u00edlen\u00e9m serveru SmartGifty. <strong>Pro:<\/strong> nasazen\u00ed samostatn\u00e9 instance na va\u0161em serveru \u2013 pln\u00e1 nez\u00e1vislost. <strong>Advanced:<\/strong> nav\u00edc rozesl\u00e1n\u00ed u\u017eivatelsk\u00fdch jmen, hesel a n\u00e1vod\u016f n\u00e1jemc\u016fm e-mailem a onboarding dokumentace.<\/p>\n        <p>Onboarding modul podporuje zaveden\u00ed nov\u00e9ho syst\u00e9mu; p\u0159\u00edprava unik\u00e1tn\u00ed datab\u00e1ze s importem a rozesl\u00e1n\u00edm je dodate\u010dn\u00fd n\u00e1klad (200 \u20ac) v z\u00e1vislosti na n\u00e1jemc\u00edch.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-moduli\">\n        <div class=\"sg-od-top\"><h4>Funkce \u2013 3 moduly<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <div class=\"sg-sub-h\">Informa\u010dn\u00ed pult<\/div>\n        <ul>\n          <li>Vyd\u00e1v\u00e1n\u00ed karet fyzick\u00fdm i pr\u00e1vnick\u00fdm osob\u00e1m, p\u0159ehled vydan\u00fdch karet a z\u016fstatk\u016f.<\/li>\n          <li>P\u0159ehled transakc\u00ed podle obchod\u016f, spr\u00e1va pr\u00e1vnick\u00fdch osob, p\u0159\u00edprava z\u00e1lohov\u00fdch faktur.<\/li>\n          <li>\u0158e\u0161en\u00ed \u017e\u00e1dost\u00ed o storno a export report\u016f do XLS \/ CSV.<\/li>\n        <\/ul>\n        <div class=\"sg-sub-h\">Administr\u00e1tor &amp; \u00fa\u010detnictv\u00ed<\/div>\n        <ul>\n          <li>P\u0159ehled obratu, vydan\u00fdch, stornovan\u00fdch, neuplatn\u011bn\u00fdch, neaktivn\u00edch a expirovan\u00fdch karet podle centra a obchodu.<\/li>\n          <li>P\u0159ehled a \u00faprava obchod\u016f a pr\u00e1vnick\u00fdch osob, skladu podle centra, online objedn\u00e1vek.<\/li>\n          <li>Tisk dokument\u016f pro banku, export do XML a potvrzov\u00e1n\u00ed z\u00e1lohov\u00fdch faktur.<\/li>\n        <\/ul>\n        <div class=\"sg-sub-h\">N\u00e1jemce<\/div>\n        <ul>\n          <li>Uplatn\u011bn\u00ed (skenov\u00e1n\u00ed \u010d\u00e1rov\u00e9ho k\u00f3du, uplatn\u011bn\u00ed, tisk dokladu o transakci).<\/li>\n          <li>Kontrola z\u016fstatku karty a p\u0159ehled transakc\u00ed s filtrovan\u00fdm exportem.<\/li>\n        <\/ul>\n        <p>U bal\u00ed\u010dk\u016f <strong>Pro<\/strong> a <strong>Advanced<\/strong> je na vy\u017e\u00e1d\u00e1n\u00ed k dispozici dodate\u010dn\u00e9 nastaven\u00ed opr\u00e1vn\u011bn\u00ed pro r\u016fzn\u00e9 u\u017eivatele (informa\u010dn\u00ed pult, \u00fa\u010detnictv\u00ed, administr\u00e1tor, obchod).<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-placila\">\n        <div class=\"sg-od-top\"><h4>Integrace platby d\u00e1rkovou kartou<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>V\u00edce zp\u016fsob\u016f uplatn\u011bn\u00ed d\u00e1rkov\u00e9 karty u n\u00e1jemc\u016f:<\/p>\n        <ul>\n          <li>Online p\u0159\u00edstup.<\/li>\n          <li>API propojen\u00ed.<\/li>\n          <li>Mobiln\u00ed za\u0159\u00edzen\u00ed.<\/li>\n          <li>POS termin\u00e1l (p\u0159i propojen\u00ed s poskytovatelem).<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-api\">\n        <div class=\"sg-od-top\"><h4>API propojen\u00ed \u2013 v\u00edce typ\u016f<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <ul>\n          <li>API pro propojen\u00ed s pokladnou (vyd\u00e1v\u00e1n\u00ed a uplatn\u011bn\u00ed).<\/li>\n          <li>API pro online objedn\u00e1v\u00e1n\u00ed d\u00e1rkov\u00fdch karet a kontrolu z\u016fstatku.<\/li>\n        <\/ul>\n        <p>Dokumentace a p\u0159\u00edklady jsou sou\u010d\u00e1st\u00ed.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-jeziki\">\n        <div class=\"sg-od-top\"><h4>V\u00edcejazy\u010dn\u00e1 podpora<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>V\u00fdchoz\u00edm jazykem je angli\u010dtina, podpora je v\u0161ak dostupn\u00e1 pro v\u0161echny jazyky \u2013 ov\u011b\u0159te si, kter\u00e9 jazyky platforma ji\u017e nab\u00edz\u00ed. U jazyka, kter\u00fd zat\u00edm nenab\u00edz\u00edme, dod\u00e1 p\u0159eklady klient a my je zdarma nasad\u00edme. Pokud p\u0159eklad zaji\u0161\u0165uje SmartGifty, \u00fa\u010dtuj\u00ed se n\u00e1klady na p\u0159ekladatele.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-denarnica\">\n        <div class=\"sg-od-top\"><h4>Apple \/ Google mobiln\u00ed pen\u011b\u017eenka<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>Zahrnut\u00e1 podpora p\u0159id\u00e1n\u00ed d\u00e1rkov\u00fdch karet do Apple a Google pen\u011b\u017eenky; \u010d\u00e1stka se aktualizuje i p\u0159i uplatn\u011bn\u00ed d\u00e1rkov\u00e9 karty.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-zascita\">\n        <div class=\"sg-od-top\"><h4>Ochrana serveru a aktualizace<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <ul>\n          <li>Hodinov\u00e1 z\u00e1loha datab\u00e1ze a dal\u0161\u00ed archivace na extern\u00ed server.<\/li>\n          <li>\u00dadr\u017eba serveru a m\u011bs\u00ed\u010dn\u00ed aktualizace.<\/li>\n          <li>Monitoring serveru s upozorn\u011bn\u00edmi na chyby a sledov\u00e1n\u00ed v\u00fdkonu aplikace.<\/li>\n          <li>Ov\u011b\u0159ov\u00e1n\u00ed k\u00f3du a bal\u00ed\u010dk\u016f.<\/li>\n        <\/ul>\n        <p>Platforma b\u011b\u017e\u00ed na infrastruktu\u0159e AWS se z\u00e1vazky vysok\u00e9 dostupnosti. Na \u00farovni aplikace zaji\u0161\u0165ujeme bezpe\u010dnost \u0159\u00edzen\u00edm p\u0159\u00edstupu, zpevn\u011bn\u00fdmi servery Ubuntu LTS, komunikac\u00ed v\u00fdhradn\u011b p\u0159es HTTPS a v\u00edcefaktorov\u00fdm ov\u011b\u0159ov\u00e1n\u00edm u kl\u00ed\u010dov\u00fdch \u00fa\u010dt\u016f. Dodr\u017eujeme postupy bezpe\u010dn\u00e9ho v\u00fdvoje (nejni\u017e\u0161\u00ed pot\u0159ebn\u00e1 opr\u00e1vn\u011bn\u00ed, odd\u011blen\u00ed prost\u0159ed\u00ed, monitoring, logov\u00e1n\u00ed, z\u00e1lohy, spr\u00e1va zranitelnost\u00ed) a bezpe\u010dnostn\u00ed testov\u00e1n\u00ed n\u00e1stroji jako SonarQube a Dependency-Track. Prov\u00e1d\u00edme tak\u00e9 nez\u00e1visl\u00e9 penetra\u010dn\u00ed testy a udr\u017eujeme procesy pro reakci na incidenty, obnovu dat a pr\u016fb\u011b\u017en\u00e9 zlep\u0161ov\u00e1n\u00ed.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-email\">\n        <div class=\"sg-od-top\"><h4>E-mailov\u00e1 podpora<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>E-mailov\u00e1 podpora provozu a pou\u017e\u00edv\u00e1n\u00ed syst\u00e9mu je zahrnuta ve fixn\u00edm m\u011bs\u00ed\u010dn\u00edm n\u00e1jmu syst\u00e9mu d\u00e1rkov\u00fdch karet. Dal\u0161\u00ed podpora p\u0159es e-mail a online platformy je k dispozici za p\u0159\u00edplatek (35 \u20ac \/ hodina).<\/p>\n        <div class=\"sg-sub-h\">SLA \u2013 doby odezvy<\/div>\n        <p>Doba odezvy znamen\u00e1 dobu, ve kter\u00e9 poskytovatel potvrd\u00ed p\u0159ijet\u00ed po\u017eadavku, provede prvotn\u00ed anal\u00fdzu a zah\u00e1j\u00ed jeho \u0159e\u0161en\u00ed (nikoli nutn\u011b dobu do \u00fapln\u00e9ho vy\u0159e\u0161en\u00ed probl\u00e9mu).<\/p>\n        <ul>\n          <li><strong>Kritick\u00e1 chyba<\/strong> (kl\u00ed\u010dov\u00e1 funkce nefunguje): odezva do 3 hodin v b\u011b\u017en\u00e9 pracovn\u00ed dob\u011b.<\/li>\n          <li><strong>N\u00edzk\u00e1 \/ rutinn\u00ed z\u00e1le\u017eitost<\/strong> (drobn\u00e1 chyba, dotaz, konfigurace): odezva do 1 pracovn\u00edho dne.<\/li>\n        <\/ul>\n        <p>Po\u017eadavky p\u0159ijat\u00e9 mimo b\u011b\u017enou pracovn\u00ed dobu se pova\u017euj\u00ed za p\u0159ijat\u00e9 n\u00e1sleduj\u00edc\u00ed pracovn\u00ed den.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-navodila\">\n        <div class=\"sg-od-top\"><h4>P\u00edsemn\u00e9 a video n\u00e1vody<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>P\u00edsemn\u00e9 a video n\u00e1vody v angli\u010dtin\u011b jsou zahrnuty v cen\u011b z\u00e1kladn\u00edho nasazen\u00ed syst\u00e9mu. P\u00edsemn\u00e9 n\u00e1vody v dal\u0161\u00edch jazyc\u00edch (pokud zat\u00edm nejsou k dispozici): 100 \u20ac.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-tisk\">\n        <div class=\"sg-od-top\"><h4>Tisk a dod\u00e1vka d\u00e1rkov\u00fdch karet<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>Tisk d\u00e1rkov\u00fdch karet m\u016f\u017eeme zajistit my, nebo si zvol\u00edte dodavatele. Ceny z\u00e1vis\u00ed na materi\u00e1lu (PVC, BIO PVC, pap\u00edr), typu tisku (CMYK a\/nebo s\u00edtotisk \u2013 metalick\u00e9 barvy, UV \u00fapravy) a mno\u017estv\u00ed. Po\u010det design\u016f nehraje roli, pokud jsou materi\u00e1l a zp\u016fsob tisku stejn\u00e9; minim\u00e1ln\u00ed mno\u017estv\u00ed na design je 200 kus\u016f.<\/p>\n        <p>P\u0159i objedn\u00e1vce dod\u00e1vky karet je generov\u00e1n\u00ed k\u00f3d\u016f pro tisk zdarma; jinak p\u0159\u00edprava chr\u00e1n\u011bn\u00e9 datab\u00e1ze a jej\u00ed zaveden\u00ed do syst\u00e9mu stoj\u00ed 120 \u20ac za objedn\u00e1vku.<\/p>\n        <div class=\"sg-sub-h\">Orienta\u010dn\u00ed ceny tisku (CMYK, s \u010d\u00e1rov\u00fdm k\u00f3dem)<\/div>\n        <ul>\n          <li>5 000 kus\u016f \u2013 0,20 \u20ac \/ kus<\/li>\n          <li>10 000 kus\u016f \u2013 0,14 \u20ac \/ kus<\/li>\n          <li>15 000 kus\u016f \u2013 0,13 \u20ac \/ kus<\/li>\n          <li>20 000 kus\u016f \u2013 0,12 \u20ac \/ kus<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od a reveal\" id=\"opis-gdpr\">\n        <div class=\"sg-od-top\"><h4>Soulad s GDPR<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <p>Soulad s GDPR vy\u017eaduje z\u00e1konn\u00e9, spravedliv\u00e9 a transparentn\u00ed zpracov\u00e1n\u00ed osobn\u00edch \u00fadaj\u016f. Kl\u00ed\u010dov\u00e9 kroky zahrnuj\u00ed z\u00edsk\u00e1n\u00ed v\u00fdslovn\u00e9ho souhlasu, zaji\u0161t\u011bn\u00ed pr\u00e1v subjektu \u00fadaj\u016f (p\u0159\u00edstup, v\u00fdmaz, p\u0159enositelnost), stanoven\u00ed pr\u00e1vn\u00edch z\u00e1klad\u016f zpracov\u00e1n\u00ed, jmenov\u00e1n\u00ed pov\u011b\u0159ence pro ochranu osobn\u00edch \u00fadaj\u016f (je-li vy\u017eadov\u00e1n) a vysokou \u00farove\u0148 zabezpe\u010den\u00ed dat. Ka\u017ed\u00e1 interakce se syst\u00e9mem je odpov\u00eddaj\u00edc\u00edm zp\u016fsobem logov\u00e1na.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od-group reveal\">Pro a Advanced<\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-podpora\">\n        <div class=\"sg-od-top\"><h4>E-mailov\u00e1 nebo online podpora<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>Podpora p\u0159es e-mail nebo online platformy je dostupn\u00e1 v b\u011b\u017en\u00e9 pracovn\u00ed dob\u011b poskytovatele a v nal\u00e9hav\u00fdch p\u0159\u00edpadech i mimo ni, podle po\u010dtu licenc\u00ed a zakoupen\u00e9ho bal\u00ed\u010dku. Dal\u0161\u00ed podpora p\u0159es e-mail nebo online platformy se \u00fa\u010dtuje zvl\u00e1\u0161\u0165 podle platn\u00e9 hodinov\u00e9 sazby; podpora mimo b\u011b\u017enou pracovn\u00ed dobu se \u00fa\u010dtuje se sazbou vy\u0161\u0161\u00ed o 30 %.<\/p>\n        <p>Po\u010det zahrnut\u00fdch hodin podpory z\u00e1vis\u00ed na celkov\u00e9m po\u010dtu licenc\u00ed na klienta (nikoli na lokalitu) \u2013 od 0,5 h p\u0159i 16\u201330 licenc\u00edch po 3 h p\u0159i 400+ licenc\u00edch.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-instanca\">\n        <div class=\"sg-od-top\"><h4>Nasazen\u00ed samostatn\u00e9 entity<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>Umo\u017e\u0148uje nasazen\u00ed samostatn\u00e9 entity (instance syst\u00e9mu SmartGifty) na vlastn\u00edm virtu\u00e1ln\u00edm serveru, \u010d\u00edm\u017e n\u00e1kupn\u00ed centrum z\u00edsk\u00e1 plnou nez\u00e1vislost a flexibilitu syst\u00e9mu na m\u00edru.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-vmesnik\">\n        <div class=\"sg-od-top\"><h4>\u00daprava u\u017eivatelsk\u00e9ho rozhran\u00ed<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <ul>\n          <li>P\u0159\u00edprava a personalizace u\u017eivatelsk\u00e9ho rozhran\u00ed SmartGifty podle obchodn\u00edch pot\u0159eb.<\/li>\n          <li>Mo\u017enost zm\u011bny opr\u00e1vn\u011bn\u00ed podle u\u017eivatelsk\u00fdch modul\u016f.<\/li>\n          <li>Konfigurace serveru se v\u0161emi n\u00e1stroji pro monitoring a z\u00e1lohov\u00e1n\u00ed.<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-dodatne-funkc\">\n        <div class=\"sg-od-top\"><h4>P\u0159id\u00e1n\u00ed dal\u0161\u00edch funkc\u00ed<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>Mo\u017enost roz\u0161\u00ed\u0159en\u00ed syst\u00e9mu o dal\u0161\u00ed funkce na m\u00edru, p\u0159izp\u016fsoben\u00e9 konkr\u00e9tn\u00edm pot\u0159eb\u00e1m a proces\u016fm klienta.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-procesi\">\n        <div class=\"sg-od-top\"><h4>Pomoc s pl\u00e1nov\u00e1n\u00edm proces\u016f<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>Poradenstv\u00ed a pomoc p\u0159i pl\u00e1nov\u00e1n\u00ed r\u016fzn\u00fdch obchodn\u00edch proces\u016f p\u0159i zav\u00e1d\u011bn\u00ed syst\u00e9mu d\u00e1rkov\u00fdch karet.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-izobrazevanje\">\n        <div class=\"sg-od-top\"><h4>\u0160kolen\u00ed person\u00e1lu a n\u00e1jemc\u016f<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <ul>\n          <li>\u0160kolen\u00ed pro person\u00e1l centra a n\u00e1jemce, online nebo osobn\u011b (jednor\u00e1zov\u011b).<\/li>\n          <li>P\u0159i osobn\u00ed realizaci se \u00fa\u010dtuj\u00ed cestovn\u00ed n\u00e1klady a p\u0159\u00edpadn\u00e9 n\u00e1klady na ubytov\u00e1n\u00ed.<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-zaledni\">\n        <div class=\"sg-od-top\"><h4>Integrace s backendov\u00fdmi syst\u00e9my<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>Integrace s backendov\u00fdmi syst\u00e9my, jako jsou pokladny, \u00fa\u010detn\u00ed syst\u00e9my, intern\u00ed v\u011brnostn\u00ed programy, BI n\u00e1stroje a dal\u0161\u00ed.<\/p>\n        <p><strong>Obchodn\u00ed \u0159et\u011bzec:<\/strong> p\u0159i v\u00edce n\u00e1kupn\u00edch centrech p\u0159ehled \u00fatraty podle center v jednom u\u017eivatelsk\u00e9m rozhran\u00ed \u2013 vhodn\u00e9 pro firmy s v\u00edce obchody v r\u016fzn\u00fdch centrech.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-novi-api\">\n        <div class=\"sg-od-top\"><h4>V\u00fdvoj nov\u00fdch API<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <p>V\u00fdvoj API propojen\u00ed na m\u00edru pro konkr\u00e9tn\u00ed pot\u0159eby klienta a napojen\u00ed na syst\u00e9my t\u0159et\u00edch stran.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od b reveal\" id=\"opis-api-statistika\">\n        <div class=\"sg-od-top\"><h4>API pro statistiky<\/h4><span class=\"sg-od-tag\">Pro \u00b7 Advanced<\/span><\/div>\n        <ul>\n          <li>API pro kontrolu z\u016fstatku p\u0159es web.<\/li>\n          <li>API pro objedn\u00e1v\u00e1n\u00ed e-karet a fyzick\u00fdch karet p\u0159es web (fyzick\u00e9 i pr\u00e1vnick\u00e9 osoby).<\/li>\n          <li>API pro uplatn\u011bn\u00ed a vyd\u00e1v\u00e1n\u00ed d\u00e1rkov\u00fdch karet.<\/li>\n          <li>API pro statistiky prodeje a uplatn\u011bn\u00ed d\u00e1rkov\u00fdch karet.<\/li>\n          <li>API pro propojen\u00ed s backendov\u00fdmi \u00fa\u010detn\u00edmi syst\u00e9my.<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od-group reveal\">Pouze Advanced<\/div>\n\n      <div class=\"sg-od c reveal\" id=\"opis-onboarding\">\n        <div class=\"sg-od-top\"><h4>Onboarding mana\u017eer<\/h4><span class=\"sg-od-tag\">Advanced<\/span><\/div>\n        <ul>\n          <li>P\u0159\u00edprava a rozesl\u00e1n\u00ed dotazn\u00edk\u016f n\u00e1jemc\u016fm a sb\u011br odpov\u011bd\u00ed.<\/li>\n          <li>Soupis vybaven\u00ed a po\u017eadavk\u016f n\u00e1jemc\u016f.<\/li>\n          <li>P\u0159\u00edprava obsahu a rozes\u00edl\u00e1n\u00ed e-mail\u016f o projektu zaveden\u00ed d\u00e1rkov\u00fdch karet (intern\u00ed rozes\u00edlac\u00ed n\u00e1stroj) \u2013 prezentace, n\u00e1vody.<\/li>\n          <li>Osobn\u00ed komunikace s ka\u017ed\u00fdm z\u00e1jemcem z \u0159ad n\u00e1jemc\u016f a p\u0159edveden\u00ed syst\u00e9mu \u2013 jedna n\u00e1v\u0161t\u011bva v centru.<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od c reveal\" id=\"opis-spletna\">\n        <div class=\"sg-od-top\"><h4>E-shop \u2013 \u0161ablona SmartGifty<\/h4><span class=\"sg-od-tag\">Advanced<\/span><\/div>\n        <p>Standardizovan\u00fd e-shop SmartWebshop: nasazen\u00ed a spu\u0161t\u011bn\u00ed v jednom jazyce, p\u0159izp\u016fsoben\u00ed str\u00e1nek a dokument\u016f \u00fadaj\u016fm n\u00e1kupn\u00edho centra.<\/p>\n        <ul>\n          <li><strong>Backend:<\/strong> nasazen\u00ed datab\u00e1ze, zad\u00e1n\u00ed \u00fadaj\u016f klienta, implementace platebn\u00edho modulu, propojen\u00ed se syst\u00e9mem SmartGifty.<\/li>\n          <li><strong>Frontend:<\/strong> vlo\u017een\u00ed obsahu a fotografi\u00ed (p\u0159iprav\u00ed klient dle pokyn\u016f), spr\u00e1va odkaz\u016f, p\u0159izp\u016fsoben\u00ed barev a p\u00edsem podle brand manu\u00e1lu.<\/li>\n          <li><strong>Server:<\/strong> p\u0159id\u00e1n\u00ed dom\u00e9nov\u00fdch z\u00e1znam\u016f, konfigurace DNS, testov\u00e1n\u00ed a spu\u0161t\u011bn\u00ed.<\/li>\n        <\/ul>\n        <div class=\"sg-sub-h\">Dopl\u0148kov\u00e9 slu\u017eby<\/div>\n        <ul>\n          <li>Marketingov\u00e1 podpora.<\/li>\n          <li>Publikace ve 2. jazyce.<\/li>\n          <li>Personalizace d\u00e1rkov\u00fdch karet nahr\u00e1n\u00edm fotografie.<\/li>\n          <li>Pozd\u011bj\u0161\u00ed odesl\u00e1n\u00ed e-d\u00e1rkov\u00e9 karty (nastaven\u00ed data a \u010dasu).<\/li>\n        <\/ul>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od c reveal\" id=\"opis-bi\">\n        <div class=\"sg-od-top\"><h4>Statistiky a BI reporty<\/h4><span class=\"sg-od-tag\">Advanced<\/span><\/div>\n        <ul>\n          <li>Prodej d\u00e1rkov\u00fdch karet za v\u0161echna centra nebo jedno centrum ve zvolen\u00e9m obdob\u00ed.<\/li>\n          <li>Po\u010det a hodnota vydan\u00fdch a uplatn\u011bn\u00fdch karet podle centra a obdob\u00ed.<\/li>\n          <li>P\u0159ehled obchod\u016f s nejv\u00edce \/ nejm\u00e9n\u011b uplatn\u011bn\u00edmi ve zvolen\u00e9m obdob\u00ed.<\/li>\n          <li>Hodnota vydan\u00fdch karet podle typu z\u00e1kazn\u00edka (fyzick\u00e9, pr\u00e1vnick\u00e9 osoby).<\/li>\n          <li>Obrat a z\u00e1soba pap\u00edrov\u00fdch d\u00e1rkov\u00fdch poukaz\u016f.<\/li>\n        <\/ul>\n        <p>Personalizovan\u00e9 m\u011bs\u00ed\u010dn\u00ed reporty a statistiky na m\u00edru jsou k dispozici po dohod\u011b.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od c reveal\" id=\"opis-ai\">\n        <div class=\"sg-od-top\"><h4>AI analytika<\/h4><span class=\"sg-od-tag\">Advanced<\/span><\/div>\n        <p>Webov\u00e9 rozhran\u00ed pro inteligentn\u00ed vizualizaci: konverza\u010dn\u00ed AI asistent, kter\u00fd rozum\u00ed va\u0161im dat\u016fm o d\u00e1rkov\u00fdch kart\u00e1ch a automaticky je p\u0159ev\u00e1d\u00ed na p\u0159ehledn\u00e9, obsahov\u011b bohat\u00e9 grafy.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od c reveal\" id=\"opis-marketing\">\n        <div class=\"sg-od-top\"><h4>Marketingov\u00e9 poradenstv\u00ed<\/h4><span class=\"sg-od-tag\">Advanced<\/span><\/div>\n        <p>Na z\u00e1klad\u011b mnohalet\u00fdch zku\u0161enost\u00ed se zav\u00e1d\u011bn\u00edm d\u00e1rkov\u00fdch karet v n\u00e1kupn\u00edch centrech nab\u00edz\u00edme marketingovou podporu p\u0159i p\u0159\u00edprav\u011b materi\u00e1l\u016f, doporu\u010den\u00ed pro reklamu a zna\u010den\u00ed v centru a osv\u011bd\u010den\u00e9 postupy pro karty, ob\u00e1lky a komunikaci. Marketingov\u00e9 poradenstv\u00ed: 60 \u20ac \/ hodina.<\/p>\n        <a class=\"sg-back\" href=\"#sg-tabela\">\u2191 Zp\u011bt na tabulku<\/a>\n      <\/div>\n\n      <div class=\"sg-od-group reveal\" id=\"dodatne-opcije\">Dal\u0161\u00ed mo\u017enosti a slu\u017eby<\/div>\n\n      <div class=\"sg-od x reveal\" id=\"opis-urne\">\n        <div class=\"sg-od-top\"><h4>Hodinov\u00e9 sazby za slu\u017eby<\/h4><span class=\"sg-od-tag\">V\u0161echny bal\u00ed\u010dky<\/span><\/div>\n        <ul>\n          <li>Dal\u0161\u00ed online nebo osobn\u00ed \u0161kolen\u00ed u\u017eivatel\u016f: 40 \u20ac \/ hodina.<\/li>\n          <li>Dal\u0161\u00ed e-mailov\u00e1 a online podpora: 35 \u20ac \/ hodina.<\/li>\n          <li>P\u0159\u00edprava \u010d\u00e1rov\u00fdch k\u00f3d\u016f pro tisk (pokud karty tiskne t\u0159et\u00ed strana): 150 \u20ac.<\/li>\n          <li>V\u00fdvoj dal\u0161\u00edch funkc\u00ed syst\u00e9mu: 80 \u20ac \/ hodina.<\/li>\n          <li>Marketingov\u00e9 poradenstv\u00ed: 60 \u20ac \/ hodina.<\/li>\n        <\/ul>\n      <\/div>\n\n      <div class=\"sg-od x reveal\" id=\"opis-dodatni-center\">\n        <div class=\"sg-od-top\"><h4>Dal\u0161\u00ed n\u00e1kupn\u00ed centrum v \u0159et\u011bzci<\/h4><span class=\"sg-od-tag\">Jednor\u00e1zov\u00fd poplatek<\/span><\/div>\n        <ul>\n          <li>Nasazen\u00ed a p\u0159\u00edprava dal\u0161\u00edho centra v r\u00e1mci \u0159et\u011bzce (samostatn\u00e1 jednotka pod st\u00e1vaj\u00edc\u00ed zna\u010dkou).<\/li>\n          <li>Import n\u00e1jemc\u016f \/ u\u017eivatel\u016f a p\u0159\u00edprava u\u017eivatelsk\u00fdch jmen a hesel.<\/li>\n          <li>Rozesl\u00e1n\u00ed p\u0159\u00edstupov\u00fdch \u00fadaj\u016f s n\u00e1vodem n\u00e1jemc\u016fm e-mailem (e-mail p\u0159iprav\u00ed klient).<\/li>\n        <\/ul>\n      <\/div>\n\n      <div class=\"sg-od x reveal\" id=\"opis-trgovina-narocilo\">\n        <div class=\"sg-od-top\"><h4>E-shop na m\u00edru<\/h4><span class=\"sg-od-tag\">Na m\u00edru<\/span><\/div>\n        <p>E-shop vyvinut\u00fd na m\u00edru: sb\u011br po\u017eadavk\u016f, design na m\u00edru, programov\u00e1n\u00ed backendu a frontendu, propojen\u00ed se syst\u00e9mem SmartGifty a veden\u00ed projektu.<\/p>\n        <span class=\"sg-price-tag\">Cenov\u00e9 rozp\u011bt\u00ed: 10 000 \u20ac \u2013 30 000 \u20ac<\/span>\n      <\/div>\n\n      <div class=\"sg-od x reveal\" id=\"opis-darilomat\">\n        <div class=\"sg-od-top\"><h4>Giftomat<\/h4><span class=\"sg-od-tag\">Dopl\u0148kov\u00e9 vybaven\u00ed<\/span><\/div>\n        <p>Samostatn\u00fd automat na prodej d\u00e1rkov\u00fdch karet v n\u00e1kupn\u00edm centru, kter\u00fd m\u016f\u017ee nahradit informa\u010dn\u00ed pult nebo jej doplnit jako dal\u0161\u00ed prodejn\u00ed kan\u00e1l. Snadno se pou\u017e\u00edv\u00e1 a skv\u011ble propaguje d\u00e1rkov\u00e9 karty.<\/p>\n        <ul>\n          <li>Automatizovan\u00fd n\u00e1kup a platba v\u00edce bankovn\u00edmi kartami.<\/li>\n          <li>V\u00fdb\u011br z v\u00edce design\u016f karet.<\/li>\n          <li>Dod\u00e1n\u00ed a instalace na m\u00edst\u011b.<\/li>\n        <\/ul>\n        <span class=\"sg-price-tag\">Cena: 6 000 \u20ac \u2013 12 000 \u20ac (podle modelu a mno\u017estv\u00ed)<\/span>\n        <div class=\"sg-sub-h\">Podpora a mo\u017enosti<\/div>\n        <ul>\n          <li>Pravideln\u00e1 vzd\u00e1len\u00e1 technick\u00e1 podpora (1 h \/ m\u011bs\u00edc) a ro\u010dn\u00ed kontrola na m\u00edst\u011b: 120 \u20ac \/ m\u011bs\u00edc.<\/li>\n          <li>Dal\u0161\u00ed podpora na m\u00edst\u011b p\u0159i nespr\u00e1vn\u00e9m pou\u017eit\u00ed \/ po\u0161kozen\u00ed: 80 \u20ac \/ h + cestovn\u00ed n\u00e1klady.<\/li>\n          <li>Roz\u0161\u00ed\u0159en\u00ed o platby v hotovosti (\u00faprava hardwaru a softwaru): p\u0159ibli\u017en\u011b 2 000 \u20ac.<\/li>\n        <\/ul>\n      <\/div>\n\n    <\/div>\n    <p class=\"sg-foot\">V\u0161echny ceny jsou bez DPH.<\/p>\n  <\/div>\n\n<\/div>\n\n<script>\n(function(){\n  var root=document.currentScript ? document.currentScript.closest('.sg-cenik') : document.querySelector('.sg-cenik');\n  if(!root) return;\n  var YES='<span class=\"ico yes\" aria-label=\"zahrnuto\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg><\/span>';\n  var NO='<span class=\"ico no\" aria-label=\"nen\u00ed zahrnuto\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/span>';\n  root.querySelectorAll('td[data-v]').forEach(function(td){ td.innerHTML = td.getAttribute('data-v')==='1'?YES:NO; });\n\n  \/* gladek scroll od i-ikone (in \"nazaj na tabelo\") do cilja + highlight *\/\n  var reduce = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n  root.querySelectorAll('a[href^=\"#\"]').forEach(function(a){\n    a.addEventListener('click',function(e){\n      var id=a.getAttribute('href').slice(1);\n      var t=root.querySelector('#'+CSS.escape(id));\n      if(!t) return; \/\/ pusti privzeto, \u010de cilj ni v bloku\n      e.preventDefault();\n      t.scrollIntoView({behavior:reduce?'auto':'smooth',block:'center'});\n      if(t.classList.contains('sg-od')){\n        t.classList.remove('sg-flash');\n        void t.offsetWidth; \/\/ restart animacije\n        t.classList.add('sg-flash');\n      }\n    });\n  });\n\n  var targets=root.querySelectorAll('.reveal, .reveal-row');\n  if(!('IntersectionObserver' in window)){ targets.forEach(function(t){t.classList.add('is-visible');}); return; }\n  var io=new IntersectionObserver(function(entries){\n    entries.forEach(function(e){ if(e.isIntersecting){ e.target.classList.add('is-visible'); io.unobserve(e.target); } });\n  },{threshold:.12,rootMargin:'0px 0px -6% 0px'});\n  targets.forEach(function(t){ io.observe(t); });\n})();\n<\/script>\n<\/section>\n<style>\n.sg-calculator {\n  --bg: #120033;\n  --panel: #1a0042;\n  --text: #e8ecff;\n  --muted: rgba(232, 236, 255, 0.72);\n  --border: rgba(232, 236, 255, 0.12);\n  --shadow: 0 10px 30px rgba(0, 0, 0, 0.35);\n  --accent: #f39704;\n  --accent2: #ffb84d;\n  --danger: #ff6b6b;\n}\n\n.sg-calculator, .sg-calculator *, .sg-calculator *::before, .sg-calculator *::after {\n  box-sizing: border-box;\n}\n\n.sg-calculator {\n  margin: 0;\n  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, \"Apple Color Emoji\",\n    \"Segoe UI Emoji\";\n  color: var(--text);\n  background: radial-gradient(1200px 800px at 20% 10%, rgba(120, 60, 255, 0.2), transparent 55%),\n    radial-gradient(900px 700px at 90% 25%, rgba(180, 100, 255, 0.15), transparent 60%),\n    linear-gradient(180deg, #08001a, var(--bg));\n  padding: 20px 0;\n  border-radius: 14px;\n}\n\n.sg-calculator .container {\n  width: min(980px, calc(100% - 32px));\n  margin: 20px auto;\n  display: grid;\n  gap: 18px;\n}\n\n.sg-calculator .header {\n  padding: 10px 2px;\n}\n\n.sg-calculator .title {\n  margin: 0;\n  letter-spacing: -0.02em;\n  font-size: 28px;\n  color: #ffffff !important;\n}\n\n.sg-calculator .subtitle {\n  margin: 8px 0 0;\n  color: #ffffff;\n  line-height: 1.5;\n}\n\n.sg-calculator .calculator-description p,\n.sg-calculator .calculator-description ul,\n.sg-calculator .calculator-description h2,\n.sg-calculator .calculator-description h3 {\n  margin: 0 0 12px;\n  color: #ffffff;\n}\n\n.sg-calculator .calculator-description ul {\n  padding-left: 20px;\n}\n\n.sg-calculator .calculator-description h2,\n.sg-calculator .calculator-description h3 {\n  color: #ffffff;\n  font-size: 18px;\n  font-weight: 700 !important;\n}\n\n.sg-calculator .calculator-description h3 strong {\n  font-weight: 700 !important;\n}\n\n.sg-calculator .calculator-description .section-heading {\n  font-size: 18px;\n  font-weight: 700;\n  color: #ffffff;\n}\n\n.sg-calculator .calculator-description .section-heading strong {\n  font-weight: 700;\n}\n\n.sg-calculator .card {\n  background: #1e004d;\n  border: 1px solid var(--border);\n  border-radius: 14px;\n  box-shadow: var(--shadow);\n  padding: 16px;\n}\n\n.sg-calculator .field {\n  display: grid;\n  gap: 6px;\n}\n\n.sg-calculator .label {\n  font-size: 12px;\n  color: var(--muted);\n}\n\n.sg-calculator .input {\n  width: 100%;\n  background: rgba(255, 255, 255, 0.06);\n  border: 1px solid rgba(255, 255, 255, 0.14);\n  border-radius: 10px;\n  padding: 11px 12px;\n  font-size: 16px;\n  color: var(--text);\n  outline: none;\n}\n\n.sg-calculator .input:focus {\n  border-color: rgba(140, 80, 255, 0.5);\n  box-shadow: 0 0 0 4px rgba(140, 80, 255, 0.12);\n}\n\n.sg-calculator .hint {\n  font-size: 12px;\n  color: rgba(232, 236, 255, 0.55);\n}\n\n.sg-calculator .status {\n  margin-top: 12px;\n  font-size: 13px;\n  color: var(--muted);\n  min-height: 18px;\n}\n\n.sg-calculator .status.error {\n  color: var(--danger);\n}\n\n.sg-calculator .resultRow {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: 16px;\n}\n\n.sg-calculator .resultStat {\n  padding: 14px;\n  border: 1px solid rgba(255, 255, 255, 0.08);\n  border-radius: 12px;\n  background: rgba(255, 255, 255, 0.04);\n}\n\n.sg-calculator .resultStat--accent {\n  background: linear-gradient(180deg, rgba(180, 100, 255, 0.12), rgba(180, 100, 255, 0.04));\n  border-color: rgba(180, 100, 255, 0.2);\n}\n\n.sg-calculator .resultLabel {\n  font-size: 12px;\n  color: var(--muted);\n}\n\n.sg-calculator .resultValue {\n  font-size: 24px;\n  font-weight: 800;\n  letter-spacing: -0.02em;\n}\n\n.sg-calculator .resultValue.small {\n  font-size: 16px;\n  font-weight: 700;\n}\n\n.sg-calculator .resultValue.accent {\n  color: #ffffff;\n}\n\n.sg-calculator .tableWrap {\n  margin-top: 12px;\n  overflow: auto;\n  border: 1px solid var(--border);\n  border-radius: 12px;\n}\n\n.sg-calculator .centerInputs {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 14px;\n  margin-top: 12px;\n}\n\n.sg-calculator .table {\n  width: 100%;\n  border-collapse: collapse;\n  min-width: 0;\n}\n\n.sg-calculator .table th,\n.sg-calculator .table td {\n  padding: 10px 12px;\n  border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n  color: #ffffff;\n  font-weight: 400;\n}\n\n.sg-calculator .table tfoot td {\n  border-bottom: none;\n  border-top: 1px solid rgba(255, 255, 255, 0.14);\n  background: rgba(255, 255, 255, 0.04);\n}\n\n.sg-calculator .sumRow td {\n  font-weight: 400;\n}\n\n.sg-calculator .table th {\n  position: sticky;\n  top: 0;\n  background: #140038;\n  text-align: left;\n  font-size: 12px;\n  color: rgba(232, 236, 255, 0.78);\n}\n\n.sg-calculator .table td.num,\n.sg-calculator .table th.num {\n  text-align: right;\n  font-variant-numeric: tabular-nums;\n}\n\n.sg-calculator .muted {\n  color: rgba(232, 236, 255, 0.55);\n}\n\n.sg-calculator .site-footer {\n  margin-top: 8px;\n  padding: 28px 16px 40px;\n  border-top: 1px solid var(--border);\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n.sg-calculator .site-footer__link {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.sg-calculator .site-footer__logo {\n  display: block;\n  max-width: min(200px, 55vw);\n  height: auto;\n  opacity: 0.98;\n  mix-blend-mode: screen;\n}\n\n.sg-calculator .site-footer__link:hover .site-footer__logo {\n  opacity: 1;\n}\n\n@media (max-width: 600px) {\n  .sg-calculator .container {\n    width: min(100%, calc(100% - 20px));\n    margin: 12px auto 16px;\n    gap: 14px;\n  }\n\n  .sg-calculator .card {\n    padding: 12px;\n  }\n\n  .sg-calculator .header {\n    padding: 4px 2px;\n  }\n\n  .sg-calculator .title {\n    font-size: 22px;\n    line-height: 1.1;\n  }\n\n  .sg-calculator .calculator-description h2,\n  .sg-calculator .calculator-description h3 {\n    font-size: 16px;\n  }\n\n  .sg-calculator .calculator-description p,\n  .sg-calculator .calculator-description ul,\n  .sg-calculator .calculator-description h2,\n  .sg-calculator .calculator-description h3 {\n    margin-bottom: 10px;\n  }\n\n  .sg-calculator .centerInputs {\n    grid-template-columns: 1fr;\n    gap: 10px;\n  }\n\n  .sg-calculator .resultRow {\n    grid-template-columns: 1fr;\n    gap: 10px;\n  }\n\n  .sg-calculator .resultStat {\n    padding: 12px;\n  }\n\n  .sg-calculator .resultValue {\n    font-size: 22px;\n  }\n\n  .sg-calculator .resultValue.small {\n    font-size: 15px;\n  }\n\n  .sg-calculator .tableWrap {\n    overflow: visible;\n    border: none;\n    margin-top: 14px;\n  }\n\n  .sg-calculator .table,\n  .sg-calculator .table thead,\n  .sg-calculator .table tbody,\n  .sg-calculator .table tfoot,\n  .sg-calculator .table tr,\n  .sg-calculator .table th,\n  .sg-calculator .table td {\n    display: block;\n    width: 100%;\n  }\n\n  .sg-calculator .table thead {\n    display: none;\n  }\n\n  .sg-calculator .table tbody {\n    display: grid;\n    gap: 10px;\n  }\n\n  .sg-calculator .table tbody tr {\n    border: 1px solid var(--border);\n    border-radius: 12px;\n    background: rgba(255, 255, 255, 0.04);\n    overflow: hidden;\n  }\n\n  .sg-calculator .table td {\n    display: flex;\n    justify-content: space-between;\n    align-items: baseline;\n    gap: 12px;\n    padding: 10px 12px;\n    text-align: left;\n  }\n\n  .sg-calculator .table td::before {\n    content: attr(data-label);\n    color: var(--muted);\n    font-size: 12px;\n    font-weight: 600;\n    text-transform: uppercase;\n    letter-spacing: 0.04em;\n  }\n\n  .sg-calculator .table td.num,\n  .sg-calculator .table th.num {\n    text-align: left;\n  }\n\n  .sg-calculator .table tfoot {\n    margin-top: 10px;\n  }\n\n  .sg-calculator .table tfoot tr {\n    border: 1px solid var(--border);\n    border-radius: 12px;\n    background: rgba(255, 255, 255, 0.04);\n    overflow: hidden;\n  }\n\n  .sg-calculator .table tfoot td {\n    display: flex;\n    justify-content: space-between;\n    align-items: baseline;\n    gap: 12px;\n    padding: 10px 12px;\n    border-top: none;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n  }\n\n  .sg-calculator .table tfoot td:last-child {\n    border-bottom: none;\n  }\n\n  .sg-calculator .table tfoot td::before {\n    color: var(--muted);\n    font-size: 12px;\n    font-weight: 600;\n    text-transform: uppercase;\n    letter-spacing: 0.04em;\n  }\n\n  .sg-calculator .table tfoot td:first-child::before {\n    content: \"\u0158\u00e1dek\";\n  }\n\n  .sg-calculator .table tfoot td:nth-child(2)::before {\n    content: \"Licence\";\n  }\n\n  .sg-calculator .table tfoot td:nth-child(3)::before {\n    content: \"Mezisou\u010det\";\n  }\n\n  .sg-calculator .site-footer {\n    padding: 20px 16px 28px;\n  }\n}\n<\/style>\n\n<div class=\"sg-calculator\">\n  <main class=\"container\">\n    <header class=\"header\">\n      <h1 class=\"title\">SmartGifty cenov\u00e1 kalkula\u010dka<\/h1>\n      <div class=\"subtitle calculator-description\">\n        <p>\n          Abyste snadno spo\u010d\u00edtali jednor\u00e1zov\u00fd poplatek za nasazen\u00ed a m\u011bs\u00ed\u010dn\u00ed p\u0159edplatn\u00e9, p\u0159ipravili jsme kalkula\u010dku, do kter\u00e9 zad\u00e1te po\u010det n\u00e1jemc\u016f pou\u017e\u00edvaj\u00edc\u00edch <strong>Smartgifty<\/strong> syst\u00e9m.\n        <\/p>\n\n        <p class=\"section-heading\"><strong>Po\u010d\u00e1te\u010dn\u00ed nasazen\u00ed syst\u00e9mu: 3 000 \u20ac<\/strong><\/p>\n        <p>Podrobnosti o rozsahu a obsahu tohoto nasazen\u00ed najdete v prezentaci.<\/p>\n\n        <p class=\"section-heading\"><strong>V\u00fdpo\u010det m\u011bs\u00ed\u010dn\u00edch licenc\u00ed<\/strong><\/p>\n        <p>\n          Pro v\u00fdpo\u010det m\u011bs\u00ed\u010dn\u00ed \u010d\u00e1stky zadejte po\u010det n\u00e1jemc\u016f. Upozor\u0148ujeme, \u017ee ve v\u00fdchoz\u00edm nastaven\u00ed jsou nutn\u00e9 dv\u011b dal\u0161\u00ed licence:\n        <\/p>\n        <ul>\n          <li><strong>Informa\u010dn\u00ed pult:<\/strong> Pro vyd\u00e1v\u00e1n\u00ed karet.<\/li>\n          <li><strong>Administr\u00e1tor:<\/strong> Pro kompletn\u00ed dohled nad syst\u00e9mem.<\/li>\n        <\/ul>\n\n        <p><em>Pozn\u00e1mka: Ka\u017ed\u00e9 dal\u0161\u00ed v\u00fddejn\u00ed m\u00edsto (nap\u0159\u00edklad web nebo automat) vy\u017eaduje vlastn\u00ed licenci.<\/em><\/p>\n      <\/div>\n    <\/header>\n\n    <section class=\"card\">\n      <label class=\"field\">\n        <span class=\"label\">Po\u010det n\u00e1kupn\u00edch center<\/span>\n        <input id=\"sg-centers\" class=\"input\" type=\"number\" min=\"1\" max=\"8\" step=\"1\" value=\"1\" placeholder=\"2\">\n        <span class=\"hint\">Zadejte po\u010det center<\/span>\n      <\/label>\n      <div id=\"sg-centerInputs\" class=\"centerInputs\"><\/div>\n      <div id=\"sg-status\" class=\"status\" role=\"status\" aria-live=\"polite\"><\/div>\n    <\/section>\n\n    <section class=\"card\">\n      <div class=\"resultRow\">\n        <div class=\"resultStat\">\n          <div class=\"resultLabel\">Mezisou\u010det<\/div>\n          <div id=\"sg-subtotal\" class=\"resultValue\" style=\"font-weight: 400;\">\u2014<\/div>\n        <\/div>\n        <div class=\"resultStat\">\n          <div class=\"resultLabel\">Sleva<\/div>\n          <div id=\"sg-discountPct\" class=\"resultValue small\">\u2014<\/div>\n        <\/div>\n        <div class=\"resultStat resultStat--accent\">\n          <div class=\"resultLabel\">Celkem<\/div>\n          <div id=\"sg-suma\" class=\"resultValue accent\">\u2014<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"tableWrap\">\n        <table class=\"table\">\n          <thead>\n            <tr>\n              <th>Centrum<\/th>\n              <th class=\"num\">Obchody<\/th>\n              <th class=\"num\">Mezisou\u010det<\/th>\n              <th class=\"num\">Mezisou\u010det (se slevou)<\/th>\n            <\/tr>\n          <\/thead>\n          <tbody id=\"sg-breakdown\">\n            <tr>\n              <td colspan=\"4\" class=\"muted\">Zadejte po\u010det center, pot\u00e9 po\u010det licenc\u00ed na centrum.<\/td>\n            <\/tr>\n          <\/tbody>\n          <tfoot>\n            <tr class=\"sumRow\">\n              <td><strong>Sou\u010det<\/strong><\/td>\n              <td id=\"sg-sumQty\" class=\"num\">\u2014<\/td>\n              <td id=\"sg-sumTotal\" class=\"num\">\u2014<\/td>\n              <td id=\"sg-sumTotalDiscounted\" class=\"num\">\u2014<\/td>\n            <\/tr>\n          <\/tfoot>\n        <\/table>\n      <\/div>\n    <\/section>\n  <\/main>\n<\/div>\n\n<script>\n\/* SmartGifty pricing calculator \u2013 robusten init (deluje tudi, \u010de CMS vstavi HTML po nalaganju skripte) *\/\n(function () {\n  var BASE_FEE_PER_CENTER = 400;\n  var MAX_CENTERS = 8;\n\n  var TIERS = [\n    { from: 1, to: 15, price: 18 },\n    { from: 16, to: 30, price: 16 },\n    { from: 31, to: 50, price: 14 },\n    { from: 51, to: 70, price: 13 },\n    { from: 71, to: 100, price: 12 },\n    { from: 101, to: 150, price: 11 },\n    { from: 151, to: 200, price: 10.5 },\n    { from: 201, to: 250, price: 10 },\n    { from: 251, to: 300, price: 9.5 },\n    { from: 301, to: 350, price: 9 },\n    { from: 351, to: 400, price: 8.5 },\n    { from: 401, to: 450, price: 8 }\n  ];\n\n  var CENTER_DISCOUNTS = { 1: 0, 2: 20, 3: 22, 4: 25, 5: 30, 6: 35, 7: 42, 8: 50 };\n\n  var T = {\n    centerLabel: \"Licence (centrum %n%)\",\n    centerPlaceholder: \"nap\u0159. 10\",\n    empty: \"Zadejte po\u010det center a pot\u00e9 po\u010det licenc\u00ed pro jednotliv\u00e1 centra.\",\n    hint: \"Zadejte po\u010det n\u00e1kupn\u00edch center (1\u20138). P\u0159i v\u00edce ne\u017e 8 n\u00e1kupn\u00edch centrech n\u00e1s kontaktujte pro nab\u00eddku na m\u00edru a zvl\u00e1\u0161tn\u00ed obchodn\u00ed podm\u00ednky.\",\n    badNumbers: \"Do ka\u017ed\u00e9ho pole centra zadejte pouze nez\u00e1porn\u00e1 cel\u00e1 \u010d\u00edsla.\",\n    rowCenter: \"Centrum %n%\",\n    colCenter: \"Centrum\",\n    colLicences: \"Licence\",\n    colSubtotal: \"Mezisou\u010det\",\n    colSubtotalDiscount: \"Mezisou\u010det (se slevou)\",\n    locale: \"cs-CZ\"\n  };\n\n  var DASH = \"\u2014\";\n\n  function fmtEur(v) {\n    var n = Number(v);\n    if (!Number.isFinite(n)) return DASH;\n    return new Intl.NumberFormat(T.locale, { style: \"currency\", currency: \"EUR\" }).format(n);\n  }\n\n  function fmtNum(v) {\n    var n = Number(v);\n    if (!Number.isFinite(n)) return DASH;\n    return new Intl.NumberFormat(T.locale, { maximumFractionDigits: 4 }).format(n);\n  }\n\n  \/* Vsota ene ali ve\u010d \u0161tevil, lo\u010denih s presledkom\/vejico\/podpi\u010djem. null = neveljaven vnos. *\/\n  function parseCounts(value) {\n    if (typeof value !== \"string\") return null;\n    var raw = value.trim();\n    if (raw === \"\") return 0;\n    var parts = raw.split(\/[\\s,;]+\/);\n    var sum = 0;\n    for (var i = 0; i < parts.length; i++) {\n      var part = parts[i].trim();\n      if (!part) continue;\n      if (\/^\\d{1,3}(\\.\\d{3})+$\/.test(part)) part = part.replace(\/\\.\/g, \"\");\n      var n = Number(part);\n      if (!Number.isFinite(n) || !Number.isInteger(n) || n < 0) return null;\n      sum += n;\n    }\n    return sum;\n  }\n\n  function licenceSubtotal(stores) {\n    var total = 0;\n    for (var i = 0; i < TIERS.length; i++) {\n      var t = TIERS[i];\n      var qty = Math.max(0, Math.min(stores, t.to) - t.from + 1);\n      if (qty > 0) total += qty * t.price;\n    }\n    var last = TIERS[TIERS.length - 1];\n    if (stores > last.to) total += (stores - last.to) * last.price;\n    return total;\n  }\n\n  function centerTotal(stores) {\n    return stores > 0 ? BASE_FEE_PER_CENTER + licenceSubtotal(stores) : 0;\n  }\n\n  function init(root) {\n    if (!root || root.getAttribute(\"data-sg-init\") === \"1\") return;\n    root.setAttribute(\"data-sg-init\", \"1\");\n\n    function el(id) { return root.querySelector(\"#\" + id) || document.getElementById(id); }\n\n    var ui = {\n      centers: el(\"sg-centers\"),\n      centerInputs: el(\"sg-centerInputs\"),\n      status: el(\"sg-status\"),\n      subtotal: el(\"sg-subtotal\"),\n      discountPct: el(\"sg-discountPct\"),\n      suma: el(\"sg-suma\"),\n      breakdown: el(\"sg-breakdown\"),\n      sumQty: el(\"sg-sumQty\"),\n      sumTotal: el(\"sg-sumTotal\"),\n      sumTotalDiscounted: el(\"sg-sumTotalDiscounted\")\n    };\n    if (!ui.centers || !ui.centerInputs) { root.removeAttribute(\"data-sg-init\"); return; }\n\n    var lastCount = null;\n\n    function setStatus(msg, isError) {\n      ui.status.textContent = msg || \"\";\n      ui.status.classList[isError ? \"add\" : \"remove\"](\"error\");\n    }\n\n    function emptyRow() {\n      var tr = document.createElement(\"tr\");\n      var td = document.createElement(\"td\");\n      td.colSpan = 4;\n      td.className = \"muted\";\n      td.textContent = T.empty;\n      tr.appendChild(td);\n      return tr;\n    }\n\n    function clearResult() {\n      ui.subtotal.textContent = DASH;\n      ui.discountPct.textContent = DASH;\n      ui.suma.textContent = DASH;\n      ui.breakdown.replaceChildren(emptyRow());\n      ui.sumQty.textContent = DASH;\n      ui.sumTotal.textContent = DASH;\n      ui.sumTotalDiscounted.textContent = DASH;\n    }\n\n    \/* Polja gradimo z createElement \u2013 nekateri CMS-i pobegnejo HTML v innerHTML. *\/\n    function renderCenterInputs(count, prev) {\n      prev = prev || [];\n      ui.centerInputs.replaceChildren();\n      if (!count) return;\n      for (var i = 1; i <= count; i++) {\n        var label = document.createElement(\"label\");\n        label.className = \"field center-block\";\n\n        var span = document.createElement(\"span\");\n        span.className = \"label\";\n        span.textContent = T.centerLabel.replace(\"%n%\", i);\n\n        var input = document.createElement(\"input\");\n        input.className = \"input center-stores\";\n        input.type = \"text\";\n        input.setAttribute(\"inputmode\", \"numeric\");\n        input.placeholder = T.centerPlaceholder;\n        input.setAttribute(\"data-center\", String(i));\n        input.value = prev[i - 1] || \"\";\n\n        label.appendChild(span);\n        label.appendChild(input);\n        ui.centerInputs.appendChild(label);\n      }\n    }\n\n    function storeValues() {\n      return Array.prototype.map.call(\n        ui.centerInputs.querySelectorAll(\".center-stores\"),\n        function (i) { return i.value; }\n      );\n    }\n\n    function parseCenters() {\n      var n = Number(String(ui.centers.value).trim());\n      if (!Number.isInteger(n) || n < 1 || n > MAX_CENTERS) return null;\n      return n;\n    }\n\n    function cell(text, cls, label) {\n      var td = document.createElement(\"td\");\n      td.textContent = text;\n      if (cls) td.className = cls;\n      if (label) td.setAttribute(\"data-label\", label);\n      return td;\n    }\n\n    function update() {\n      var count = parseCenters();\n\n      if (count == null) {\n        if (lastCount !== 0) { renderCenterInputs(0); lastCount = 0; }\n        clearResult();\n        setStatus(T.hint, false);\n        return;\n      }\n\n      if (count !== lastCount) {\n        renderCenterInputs(count, storeValues());\n        lastCount = count;\n      }\n\n      var counts = storeValues().map(parseCounts);\n      if (counts.indexOf(null) !== -1) {\n        clearResult();\n        setStatus(T.badNumbers, true);\n        return;\n      }\n\n      var rows = [];\n      var subtotal = 0;\n      for (var i = 0; i < counts.length; i++) {\n        var stores = counts[i] || 0;\n        var total = centerTotal(stores);\n        subtotal += total;\n        rows.push({ index: i + 1, stores: stores, subtotal: total });\n      }\n\n      var pct = CENTER_DISCOUNTS[count] || 0;\n      var factor = 1 - pct \/ 100;\n      var final = subtotal * factor;\n\n      ui.subtotal.textContent = fmtEur(subtotal);\n      ui.discountPct.textContent = pct > 0 ? pct + \"%\" : DASH;\n      ui.suma.textContent = fmtEur(final);\n      setStatus(\"\", false);\n\n      var qty = rows.reduce(function (a, r) { return a + r.stores; }, 0);\n      ui.sumQty.textContent = fmtNum(qty);\n      ui.sumTotal.textContent = fmtEur(subtotal);\n      ui.sumTotalDiscounted.textContent = fmtEur(final);\n\n      var frag = document.createDocumentFragment();\n      rows.forEach(function (r) {\n        var tr = document.createElement(\"tr\");\n        tr.appendChild(cell(T.rowCenter.replace(\"%n%\", r.index), null, T.colCenter));\n        tr.appendChild(cell(fmtNum(r.stores), \"num\", T.colLicences));\n        tr.appendChild(cell(fmtEur(r.subtotal), \"num\", T.colSubtotal));\n        tr.appendChild(cell(fmtEur(r.subtotal * factor), \"num\", T.colSubtotalDiscount));\n        frag.appendChild(tr);\n      });\n      ui.breakdown.replaceChildren(frag);\n    }\n\n    \/* Delegirano \u2013 pre\u017eivi tudi, \u010de CMS zamenja notranji DOM. *\/\n    root.addEventListener(\"input\", function (e) {\n      if (e.target === ui.centers || e.target.classList.contains(\"center-stores\")) update();\n    });\n    root.addEventListener(\"change\", function (e) {\n      if (e.target === ui.centers || e.target.classList.contains(\"center-stores\")) update();\n    });\n\n    clearResult();\n    update();\n  }\n\n  function boot() {\n    var roots = document.querySelectorAll(\".sg-calculator\");\n    for (var i = 0; i < roots.length; i++) init(roots[i]);\n    return roots.length > 0;\n  }\n\n  if (!boot() && typeof MutationObserver === \"function\") {\n    var mo = new MutationObserver(function () { if (boot()) mo.disconnect(); });\n    mo.observe(document.documentElement, { childList: true, subtree: true });\n    setTimeout(function () { mo.disconnect(); }, 20000);\n  }\n  document.addEventListener(\"DOMContentLoaded\", boot);\n})();\n<\/script>\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js@4\"><\/script>\n\n<style>\n.calc-section {\n  background:\n    radial-gradient(1200px 800px at 20% 10%, rgba(120,60,255,0.2), transparent 55%),\n    radial-gradient(900px 700px at 90% 25%, rgba(180,100,255,0.15), transparent 60%),\n    linear-gradient(180deg, #08001a, #120033);\n  padding: 80px 20px;\n  color: #e8ecff;\n  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, \"Apple Color Emoji\", \"Segoe UI Emoji\";\n  border-radius: 14px;\n  margin-top: 30px;\n}\n\n.calc-container {\n  max-width: 860px;\n  margin: 0 auto;\n}\n\n.calc-header {\n  text-align: center;\n  margin-bottom: 40px;\n}\n\n.calc-header h2 {\n  font-size: clamp(1.6rem, 3.5vw, 2.2rem);\n  font-weight: 800;\n  color: #ffffff;\n  letter-spacing: -0.02em;\n  margin-bottom: 10px;\n}\n\n.calc-header p {\n  font-size: 1rem;\n  color: rgba(232,236,255,0.72);\n  max-width: 520px;\n  margin: 0 auto;\n  line-height: 1.6;\n}\n\n.calc-card {\n  background: #1e004d;\n  border: 1px solid rgba(232,236,255,0.12);\n  border-radius: 16px;\n  box-shadow: 0 10px 30px rgba(0,0,0,0.35);\n  padding: 28px 24px;\n  margin-bottom: 20px;\n}\n\n.calc-fields {\n  display: grid;\n  grid-template-columns: repeat(2, 1fr);\n  gap: 18px;\n}\n\n.calc-field { display: grid; gap: 6px; }\n.calc-field.full { grid-column: 1 \/ -1; }\n\n.calc-label {\n  font-size: 0.82rem;\n  color: rgba(232,236,255,0.72);\n  font-weight: 500;\n}\n\n.calc-select,\n.calc-input {\n  width: 100%;\n  background: rgba(255,255,255,0.06);\n  border: 1px solid rgba(255,255,255,0.14);\n  border-radius: 10px;\n  padding: 13px 14px;\n  font-size: 1rem;\n  color: #e8ecff;\n  font-family: inherit;\n  outline: none;\n  transition: border-color 0.2s, box-shadow 0.2s;\n  -webkit-appearance: none;\n}\n\n.calc-select {\n  background-image: url(\"data:image\/svg+xml,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' fill='none'><path d='M1 1.5l5 5 5-5' stroke='#f39704' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'\/><\/svg>\");\n  background-repeat: no-repeat;\n  background-position: right 14px center;\n  padding-right: 36px;\n  cursor: pointer;\n}\n\n.calc-select option { background: #1e004d; color: #e8ecff; }\n\n.calc-input:focus,\n.calc-select:focus {\n  border-color: rgba(243,151,4,0.5);\n  box-shadow: 0 0 0 4px rgba(243,151,4,0.12);\n}\n\n.calc-input::placeholder { color: rgba(232,236,255,0.35); }\n\n.calc-checkbox-row {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n  margin-top: 4px;\n}\n\n.calc-checkbox {\n  width: 20px;\n  height: 20px;\n  accent-color: #f39704;\n  cursor: pointer;\n}\n\n.calc-checkbox-label {\n  font-size: 0.92rem;\n  color: rgba(232,236,255,0.72);\n  cursor: pointer;\n}\n\n.calc-btn {\n  width: 100%;\n  background: linear-gradient(135deg, #f39704, #c2740a);\n  color: #ffffff;\n  border: none;\n  border-radius: 12px;\n  padding: 16px;\n  font-size: 1.05rem;\n  font-weight: 700;\n  cursor: pointer;\n  transition: transform 0.15s, box-shadow 0.2s;\n  font-family: inherit;\n  margin-top: 8px;\n}\n\n.calc-btn:hover {\n  transform: translateY(-1px);\n  box-shadow: 0 8px 24px rgba(243,151,4,0.35);\n}\n\n.results-summary {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 14px;\n  margin-bottom: 20px;\n}\n\n.result-stat {\n  padding: 18px 16px;\n  border: 1px solid rgba(255,255,255,0.08);\n  border-radius: 14px;\n  background: rgba(255,255,255,0.04);\n}\n\n.result-stat--accent {\n  background: linear-gradient(180deg, rgba(243,151,4,0.15), rgba(243,151,4,0.05));\n  border-color: rgba(243,151,4,0.25);\n}\n\n.result-stat-label {\n  font-size: 0.78rem;\n  color: rgba(232,236,255,0.72);\n  margin-bottom: 4px;\n  text-transform: uppercase;\n  letter-spacing: 0.04em;\n  font-weight: 600;\n}\n\n.result-stat-value {\n  font-size: 1.5rem;\n  font-weight: 800;\n  letter-spacing: -0.02em;\n  color: #ffffff;\n}\n\n.result-stat-value.accent { color: #f39704; }\n\n.calc-table-wrap {\n  overflow: auto;\n  border: 1px solid rgba(232,236,255,0.12);\n  border-radius: 14px;\n  margin-bottom: 20px;\n}\n\n.calc-chart-wrap {\n  margin-top: 18px;\n  padding: 14px 12px;\n  border: 1px solid rgba(232,236,255,0.12);\n  border-radius: 14px;\n  background: rgba(255,255,255,0.02);\n  position: relative;\n  height: 340px;\n}\n\n.calc-table {\n  width: 100%;\n  border-collapse: collapse;\n}\n\n.calc-table th,\n.calc-table td {\n  padding: 12px 16px;\n  border-bottom: 1px solid rgba(255,255,255,0.08);\n  color: #ffffff;\n  font-size: 0.92rem;\n}\n\n.calc-table th {\n  background: rgba(20,0,56,0.8);\n  text-align: left;\n  font-size: 0.78rem;\n  color: rgba(232,236,255,0.72);\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.04em;\n}\n\n.calc-table td.num,\n.calc-table th.num {\n  text-align: right;\n  font-variant-numeric: tabular-nums;\n}\n\n.calc-table tfoot td {\n  border-bottom: none;\n  border-top: 2px solid rgba(243,151,4,0.25);\n  background: rgba(243,151,4,0.06);\n  font-weight: 700;\n}\n\n.benefits-card {\n  background: linear-gradient(135deg, rgba(243,151,4,0.08), rgba(243,151,4,0.03));\n  border: 1px solid rgba(243,151,4,0.15);\n  border-radius: 16px;\n  padding: 28px 24px;\n}\n\n.benefits-title {\n  font-size: 1rem;\n  font-weight: 700;\n  color: #ffffff;\n  margin-bottom: 16px;\n}\n\n.benefits-list {\n  list-style: none;\n  display: grid;\n  gap: 14px;\n  padding: 0;\n  margin: 0;\n}\n\n.benefits-list li {\n  display: flex;\n  align-items: flex-start;\n  gap: 12px;\n  font-size: 0.92rem;\n  color: rgba(232,236,255,0.72);\n  line-height: 1.5;\n}\n\n.benefit-icon {\n  flex-shrink: 0;\n  width: 28px;\n  height: 28px;\n  background: rgba(243,151,4,0.15);\n  border-radius: 8px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-top: 1px;\n}\n\n.benefit-icon svg { width: 15px; height: 15px; fill: #f39704; }\n\n@media (max-width: 640px) {\n  .calc-section { padding: 60px 16px; }\n  .calc-fields { grid-template-columns: 1fr; }\n  .results-summary { grid-template-columns: 1fr; }\n  .calc-card { padding: 20px 16px; }\n\n  .calc-table-wrap { border: none; overflow: visible; }\n  .calc-table, .calc-table thead, .calc-table tbody,\n  .calc-table tfoot, .calc-table tr, .calc-table th, .calc-table td {\n    display: block; width: 100%;\n  }\n  .calc-table thead { display: none; }\n  .calc-table tbody { display: grid; gap: 10px; }\n  .calc-table tbody tr {\n    border: 1px solid rgba(232,236,255,0.12);\n    border-radius: 12px;\n    background: rgba(255,255,255,0.04);\n    overflow: hidden;\n  }\n  .calc-table td {\n    display: flex; justify-content: space-between;\n    align-items: baseline; gap: 12px; text-align: right;\n  }\n  .calc-table td::before {\n    content: attr(data-label);\n    color: rgba(232,236,255,0.72);\n    font-size: 0.75rem;\n    font-weight: 600;\n    text-transform: uppercase;\n    letter-spacing: 0.04em;\n    text-align: left;\n  }\n  .calc-table td.num { text-align: right; }\n  .calc-table tfoot { margin-top: 10px; }\n  .calc-table tfoot tr {\n    border: 1px solid rgba(243,151,4,0.2);\n    border-radius: 12px;\n    background: rgba(243,151,4,0.06);\n    overflow: hidden;\n  }\n  .calc-table tfoot td { border-top: none; border-bottom: 1px solid rgba(255,255,255,0.08); }\n  .calc-table tfoot td:last-child { border-bottom: none; }\n  .calc-table tfoot td::before {\n    color: rgba(232,236,255,0.72);\n    font-size: 0.75rem;\n    font-weight: 600;\n    text-transform: uppercase;\n    letter-spacing: 0.04em;\n  }\n}\n<\/style>\n\n<section class=\"calc-section\">\n  <div class=\"calc-container\">\n    <div class=\"calc-header\">\n      <h2>SmartGifty kalkula\u010dka r\u016fstu tr\u017eeb<\/h2>\n      <p>Odhadn\u011bte dodate\u010dn\u00fd zisk, kter\u00fd m\u016f\u017ee syst\u00e9m digit\u00e1ln\u00edch d\u00e1rkov\u00fdch karet p\u0159in\u00e9st va\u0161emu podnik\u00e1n\u00ed v n\u00e1sleduj\u00edc\u00edch 5 letech.<\/p>\n    <\/div>\n\n    <div class=\"calc-card\">\n      <div class=\"calc-fields\">\n        <div class=\"calc-field full\">\n          <label class=\"calc-label\" for=\"calcType\">Typ podnik\u00e1n\u00ed<\/label>\n          <select id=\"calcType\" class=\"calc-select\" onchange=\"window.sgUpdateUI()\">\n            <option value=\"\">&#8212; Vyberte typ podnik\u00e1n\u00ed &#8212;<\/option>\n            <option value=\"shopping_center\">N\u00e1kupn\u00ed centrum<\/option>\n            <option value=\"multi_location\">Firma s v\u00edce pobo\u010dkami<\/option>\n          <\/select>\n        <\/div>\n\n        <div id=\"giftCardStatusSection\" class=\"calc-field full\" style=\"display:none\">\n          <label class=\"calc-label\">Stav d\u00e1rkov\u00fdch karet<\/label>\n          <div style=\"display:grid;gap:10px;margin-top:8px\">\n            <label style=\"display:flex;align-items:center;gap:10px;cursor:pointer\">\n              <input type=\"radio\" name=\"giftCardStatus\" value=\"none\" onchange=\"window.sgUpdateUI()\" style=\"width:18px;height:18px;accent-color:#f39704;cursor:pointer\">\n              <span style=\"color:#e8ecff;font-size:0.92rem\">D\u00e1rkov\u00e9 karty zat\u00edm nem\u00e1me<\/span>\n            <\/label>\n            <label style=\"display:flex;align-items:center;gap:10px;cursor:pointer\">\n              <input type=\"radio\" name=\"giftCardStatus\" value=\"vouchers\" onchange=\"window.sgUpdateUI()\" style=\"width:18px;height:18px;accent-color:#f39704;cursor:pointer\">\n              <span style=\"color:#e8ecff;font-size:0.92rem\">M\u00e1me d\u00e1rkov\u00e9 poukazy<\/span>\n            <\/label>\n            <label style=\"display:flex;align-items:center;gap:10px;cursor:pointer\">\n              <input type=\"radio\" name=\"giftCardStatus\" value=\"cards\" onchange=\"window.sgUpdateUI()\" style=\"width:18px;height:18px;accent-color:#f39704;cursor:pointer\">\n              <span style=\"color:#e8ecff;font-size:0.92rem\">D\u00e1rkov\u00e9 karty u\u017e m\u00e1me<\/span>\n            <\/label>\n          <\/div>\n        <\/div>\n\n        <div id=\"scNumLocations\" class=\"calc-field\" style=\"display:none\">\n          <label class=\"calc-label\" for=\"calcSCLocations\">Po\u010det lokalit n\u00e1kupn\u00edch center<\/label>\n          <input id=\"calcSCLocations\" class=\"calc-input\" type=\"number\" min=\"1\" max=\"10\" step=\"1\" value=\"1\" placeholder=\"nap\u0159. 1\" onchange=\"window.sgUpdateUI()\">\n        <\/div>\n\n        <div id=\"scNumStoresSection\" style=\"display:none\"><\/div>\n\n        <div id=\"mlNumLocations\" class=\"calc-field\" style=\"display:none\">\n          <label class=\"calc-label\" for=\"calcMLLocations\">Po\u010det pobo\u010dek<\/label>\n          <input id=\"calcMLLocations\" class=\"calc-input\" type=\"number\" min=\"1\" max=\"100\" step=\"1\" value=\"1\" placeholder=\"nap\u0159. 5\">\n        <\/div>\n\n        <div id=\"yearlyRevenueSection\" class=\"calc-field full\" style=\"display:none\">\n          <label class=\"calc-label\" for=\"calcYearlyRevenue\">Ro\u010dn\u00ed tr\u017eby (\u20ac)<\/label>\n          <input id=\"calcYearlyRevenue\" class=\"calc-input\" type=\"text\" inputmode=\"numeric\" placeholder=\"nap\u0159. 500000\">\n        <\/div>\n\n        <div class=\"calc-field full\">\n          <button class=\"calc-btn\" type=\"button\" onclick=\"window.sgCalcRun()\">Spo\u010d\u00edtat mou 5letou projekci<\/button>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"calc-results\" id=\"calcResults\" style=\"display:none\">\n      <div class=\"results-summary\">\n        <div class=\"result-stat\">\n          <div class=\"result-stat-label\">Tr\u017eby 1. roku<\/div>\n          <div class=\"result-stat-value\" id=\"resYear1\">\u2014<\/div>\n        <\/div>\n        <div class=\"result-stat\">\n          <div class=\"result-stat-label\">Tr\u017eby 5. roku<\/div>\n          <div class=\"result-stat-value\" id=\"resYear5\">\u2014<\/div>\n        <\/div>\n        <div class=\"result-stat result-stat--accent\">\n          <div class=\"result-stat-label\">Celkem za 5 let<\/div>\n          <div class=\"result-stat-value accent\" id=\"resTotal\">\u2014<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"calc-card\">\n        <div class=\"calc-table-wrap\">\n          <table class=\"calc-table\">\n            <thead>\n              <tr>\n                <th>Rok<\/th>\n                <th class=\"num\">M\u00edra r\u016fstu<\/th>\n                <th class=\"num\">Tr\u017eby z d\u00e1rkov\u00fdch karet<\/th>\n                <th class=\"num\">Kumulativ<\/th>\n              <\/tr>\n            <\/thead>\n            <tbody id=\"calcTableBody\"><\/tbody>\n            <tfoot>\n              <tr>\n                <td data-label=\"\"><strong>Celkem (5 let)<\/strong><\/td>\n                <td class=\"num\" data-label=\"M\u00edra r\u016fstu\">\u2014<\/td>\n                <td class=\"num\" id=\"calcFootRevenue\" data-label=\"Tr\u017eby z d\u00e1rkov\u00fdch karet\">\u2014<\/td>\n                <td class=\"num\" id=\"calcFootCum\" data-label=\"Kumulativ\">\u2014<\/td>\n              <\/tr>\n            <\/tfoot>\n          <\/table>\n        <\/div>\n\n        <div class=\"calc-chart-wrap\">\n          <canvas id=\"calc-revenue-chart\" aria-label=\"Ro\u010dn\u00ed tr\u017eby a kumulativ\"><\/canvas>\n        <\/div>\n      <\/div>\n\n      <div class=\"benefits-card\">\n        <div class=\"benefits-title\">Za \u010d\u00edsly \u2014 pro\u010d SmartGifty?<\/div>\n        <ul class=\"benefits-list\">\n          <li>\n            <span class=\"benefit-icon\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"><\/path><\/svg><\/span>\n            <span><strong>Siln\u00fd marketingov\u00fd n\u00e1stroj<\/strong> \u2014 zlep\u0161ete z\u00e1kaznickou zku\u0161enost st\u00e1vaj\u00edc\u00edch klient\u016f personalizovan\u00fdmi digit\u00e1ln\u00edmi d\u00e1rkov\u00fdmi kartami.<\/span>\n          <\/li>\n          <li>\n            <span class=\"benefit-icon\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"><\/path><\/svg><\/span>\n            <span><strong>Z\u00edskejte nov\u00e9 z\u00e1kazn\u00edky<\/strong> \u2014 d\u00e1rkov\u00e9 karty pat\u0159\u00ed k nej\u00fa\u010dinn\u011bj\u0161\u00edm zp\u016fsob\u016fm, jak k v\u00e1m p\u0159iv\u00e9st prvn\u00ed kupuj\u00edc\u00ed.<\/span>\n          <\/li>\n          <li>\n            <span class=\"benefit-icon\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\"><\/path><\/svg><\/span>\n            <span><strong>U\u0161et\u0159ete \u010das a pen\u00edze d\u00edky digitalizaci<\/strong> \u2014 zru\u0161te pap\u00edrov\u00e9 poukazy, sni\u017ete administrativu a z\u00edskejte analytiku v re\u00e1ln\u00e9m \u010dase.<\/span>\n          <\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<script>\n(function() {\n  function sgRevenueInit() {\n    var revenueChart = null;\n\n    \/* Vsi uporabniku vidni nizi na enem mestu (prevod = zamenjava tega bloka). *\/\n    var T = {\n      storesPerLocation: 'Po\u010det obchod\u016f na lokalitu',\n      storesInCenter: 'Po\u010det obchod\u016f v centru',\n      noteLabel: 'Pozn\u00e1mka:',\n      bracketNote: ' Tr\u017eby se po\u010d\u00edtaj\u00ed podle p\u00e1sem: 1\u201350 obchod\u016f = 115 000 \\u20AC, 51\u2013100 obchod\u016f = 255 000 \\u20AC, 101\u2013150 obchod\u016f = 360 000 \\u20AC, 150+ obchod\u016f = 450 000 \\u20AC.',\n      locationStores: 'Lokalita %n% \u2013 po\u010det obchod\u016f',\n      storesPlaceholder: 'nap\u0159. 50',\n      errType: 'Vyberte typ podnik\u00e1n\u00ed.',\n      errStatus: 'Vyberte stav va\u0161ich d\u00e1rkov\u00fdch karet.',\n      errStores: 'Zadejte platn\u00fd po\u010det obchod\u016f pro lokalitu %n%',\n      errRevenue: 'Zadejte platn\u00e9 ro\u010dn\u00ed tr\u017eby.',\n      baseline: 'V\u00fdchoz\u00ed stav',\n      yearN: 'Rok %n%',\n      colYear: 'Rok',\n      colGrowth: 'M\u00edra r\u016fstu',\n      colRevenue: 'Tr\u017eby z d\u00e1rkov\u00fdch karet',\n      colCum: 'Kumulativ',\n      axisYearly: 'Ro\u010dn\u00ed tr\u017eby',\n      locale: 'cs-CZ'\n    };\n\n    function renderRevenueChart(rows, growthRates) {\n      var canvas = document.getElementById('calc-revenue-chart');\n      if (!canvas || typeof Chart === 'undefined' || !rows || !rows.length) {\n        if (revenueChart) { revenueChart.destroy(); revenueChart = null; }\n        return;\n      }\n      var labels = rows.map(function (r) { return T.yearN.replace('%n%', r.year); });\n      var revenues = rows.map(function (r) { return r.revenue; });\n      var cums = rows.map(function (r) { return r.cum; });\n\n      if (revenueChart) { revenueChart.destroy(); revenueChart = null; }\n\n      revenueChart = new Chart(canvas, {\n        type: 'bar',\n        data: {\n          labels: labels,\n          datasets: [\n            {\n              type: 'bar',\n              label: T.colRevenue,\n              data: revenues,\n              backgroundColor: 'rgba(243, 151, 4, 0.85)',\n              borderColor: '#f39704',\n              borderWidth: 1,\n              borderRadius: 6,\n              yAxisID: 'y',\n              order: 2,\n            },\n            {\n              type: 'line',\n              label: T.colCum,\n              data: cums,\n              borderColor: '#ffb84d',\n              backgroundColor: 'rgba(255, 184, 77, 0.2)',\n              borderWidth: 2,\n              tension: 0.3,\n              pointRadius: 4,\n              pointBackgroundColor: '#ffb84d',\n              yAxisID: 'yCum',\n              order: 1,\n            },\n          ],\n        },\n        options: {\n          responsive: true,\n          maintainAspectRatio: false,\n          interaction: { mode: 'index', intersect: false },\n          plugins: {\n            legend: {\n              labels: { color: '#e8ecff' },\n            },\n            tooltip: {\n              callbacks: {\n                label: function (ctx) {\n                  return ctx.dataset.label + ': ' + sgFmtEur(ctx.parsed.y);\n                },\n              },\n            },\n          },\n          scales: {\n            x: {\n              ticks: { color: '#e8ecff' },\n              grid: { color: 'rgba(232,236,255,0.08)' },\n            },\n            y: {\n              position: 'left',\n              ticks: { color: '#e8ecff', callback: function (v) { return sgFmtEur(v); } },\n              grid: { color: 'rgba(232,236,255,0.08)' },\n              title: { display: true, text: T.axisYearly, color: '#e8ecff' },\n            },\n            yCum: {\n              position: 'right',\n              ticks: { color: '#ffb84d', callback: function (v) { return sgFmtEur(v); } },\n              grid: { drawOnChartArea: false },\n              title: { display: true, text: T.colCum, color: '#ffb84d' },\n            },\n          },\n        },\n      });\n    }\n\n    function sgParseNum(val) {\n      if (typeof val !== 'string') val = String(val);\n      var raw = val.trim().replace(\/\\s\/g, '');\n      if (!raw) return null;\n      var lastComma = raw.lastIndexOf(',');\n      var lastDot = raw.lastIndexOf('.');\n      if (lastComma !== -1 && lastDot !== -1) {\n        raw = lastComma > lastDot\n          ? raw.replace(\/\\.\/g, '').replace(',', '.')\n          : raw.replace(\/,\/g, '');\n      } else if (lastComma !== -1) {\n        raw = \/^\\d{1,3}(,\\d{3})+$\/.test(raw) ? raw.replace(\/,\/g, '') : raw.replace(',', '.');\n      } else if (lastDot !== -1 && \/^\\d{1,3}(\\.\\d{3})+$\/.test(raw)) {\n        raw = raw.replace(\/\\.\/g, '');\n      }\n      var n = Number(raw);\n      return Number.isFinite(n) && n >= 0 ? n : null;\n    }\n\n    function sgFmtEur(n) {\n      if (!Number.isFinite(n)) return '\\u2014';\n      return new Intl.NumberFormat(T.locale, { style: 'currency', currency: 'EUR', maximumFractionDigits: 0 }).format(n);\n    }\n\n    window.sgUpdateUI = function () {\n      var type = document.getElementById('calcType').value;\n      var giftCardStatus = document.querySelector('input[name=\"giftCardStatus\"]:checked');\n      var status = giftCardStatus ? giftCardStatus.value : '';\n\n      document.getElementById('giftCardStatusSection').style.display = 'none';\n      document.getElementById('scNumLocations').style.display = 'none';\n      document.getElementById('scNumStoresSection').style.display = 'none';\n      document.getElementById('mlNumLocations').style.display = 'none';\n      document.getElementById('yearlyRevenueSection').style.display = 'none';\n\n      if (!type) return;\n\n      document.getElementById('giftCardStatusSection').style.display = 'block';\n\n      if (!status) return;\n\n      if (type === 'shopping_center') {\n        if (status === 'none') {\n          document.getElementById('scNumLocations').style.display = 'block';\n\n          var numLocations = parseInt(document.getElementById('calcSCLocations').value) || 1;\n          var storesSection = document.getElementById('scNumStoresSection');\n\n          if (numLocations > 1) {\n            var html = '<div class=\"calc-field full\">';\n            html += '<label class=\"calc-label\">' + T.storesPerLocation + '<\/label>';\n            html += '<p style=\"font-size:0.75rem;color:rgba(232,236,255,0.72);margin-top:4px;line-height:1.4\">';\n            html += '<strong>' + T.noteLabel + '<\/strong>' + T.bracketNote;\n            html += '<\/p>';\n            html += '<\/div>';\n            for (var i = 1; i <= Math.min(numLocations, 10); i++) {\n              html += '<div class=\"calc-field\">';\n              html += '<label class=\"calc-label\" for=\"scStores' + i + '\">' + T.locationStores.replace('%n%', i) + '<\/label>';\n              html += '<input id=\"scStores' + i + '\" class=\"calc-input\" type=\"number\" min=\"1\" step=\"1\" value=\"50\" placeholder=\"' + T.storesPlaceholder + '\">';\n              html += '<\/div>';\n            }\n            storesSection.innerHTML = html;\n            storesSection.style.display = 'block';\n          } else {\n            var html = '<div class=\"calc-field full\">';\n            html += '<label class=\"calc-label\" for=\"scStores1\">' + T.storesInCenter + '<\/label>';\n            html += '<p style=\"font-size:0.75rem;color:rgba(232,236,255,0.72);margin-top:4px;margin-bottom:8px;line-height:1.4\">';\n            html += '<strong>' + T.noteLabel + '<\/strong>' + T.bracketNote;\n            html += '<\/p>';\n            html += '<input id=\"scStores1\" class=\"calc-input\" type=\"number\" min=\"1\" step=\"1\" value=\"50\" placeholder=\"' + T.storesPlaceholder + '\">';\n            html += '<\/div>';\n            storesSection.innerHTML = html;\n            storesSection.style.display = 'block';\n          }\n        } else {\n          document.getElementById('yearlyRevenueSection').style.display = 'block';\n        }\n      }\n\n      if (type === 'multi_location') {\n        document.getElementById('mlNumLocations').style.display = 'block';\n\n        if (status === 'vouchers' || status === 'cards') {\n          document.getElementById('yearlyRevenueSection').style.display = 'block';\n        }\n      }\n    };\n\n    function getSCBaselineRevenue(numStores) {\n      if (numStores <= 50) return 115000;\n      if (numStores <= 100) return 255000;\n      if (numStores <= 150) return 360000;\n      return 450000;\n    }\n\n    window.sgCalcRun = function () {\n      var type = document.getElementById('calcType').value;\n      var giftCardStatus = document.querySelector('input[name=\"giftCardStatus\"]:checked');\n      var status = giftCardStatus ? giftCardStatus.value : '';\n\n      if (!type) { alert(T.errType); return; }\n      if (!status) { alert(T.errStatus); return; }\n\n      var yearlyRevenue = 0;\n      var growthRates = [];\n\n      if (type === 'shopping_center') {\n        if (status === 'none') {\n          var numLocations = parseInt(document.getElementById('calcSCLocations').value) || 1;\n          var totalStores = 0;\n          for (var i = 1; i <= Math.min(numLocations, 10); i++) {\n            var storesInput = document.getElementById('scStores' + i);\n            if (storesInput) {\n              var stores = parseInt(storesInput.value) || 0;\n              if (stores <= 0) { alert(T.errStores.replace('%n%', i)); return; }\n              totalStores += stores;\n            }\n          }\n          yearlyRevenue = getSCBaselineRevenue(totalStores);\n          growthRates = [0, 0.50, 0.45, 0.40, 0.35];\n        } else if (status === 'vouchers') {\n          yearlyRevenue = sgParseNum(document.getElementById('calcYearlyRevenue').value);\n          if (!yearlyRevenue || yearlyRevenue <= 0) { alert(T.errRevenue); return; }\n          growthRates = [0.30, 0.24, 0.18, 0.12, 0.06];\n        } else if (status === 'cards') {\n          yearlyRevenue = sgParseNum(document.getElementById('calcYearlyRevenue').value);\n          if (!yearlyRevenue || yearlyRevenue <= 0) { alert(T.errRevenue); return; }\n          growthRates = [0.18, 0.15, 0.12, 0.09, 0.06];\n        }\n      }\n\n      if (type === 'multi_location') {\n        var numLocations = parseInt(document.getElementById('calcMLLocations').value) || 1;\n        if (status === 'none') {\n          yearlyRevenue = 2500 * numLocations;\n          growthRates = [0.20, 0.20, 0.20, 0.20, 0.20];\n        } else {\n          yearlyRevenue = sgParseNum(document.getElementById('calcYearlyRevenue').value);\n          if (!yearlyRevenue || yearlyRevenue <= 0) { alert(T.errRevenue); return; }\n          growthRates = [0.20, 0.20, 0.20, 0.20, 0.20];\n        }\n      }\n\n      var rows = [], cum = 0, totRevenue = 0;\n      var currentRevenue = yearlyRevenue;\n\n      for (var y = 1; y <= 5; y++) {\n        var yearRevenue = currentRevenue * (1 + growthRates[y - 1]);\n        cum += yearRevenue;\n        totRevenue += yearRevenue;\n        rows.push({ year: y, revenue: yearRevenue, cum: cum });\n        currentRevenue = yearRevenue;\n      }\n\n      document.getElementById('resYear1').textContent = sgFmtEur(rows[0].revenue);\n      document.getElementById('resYear5').textContent = sgFmtEur(rows[4].revenue);\n      document.getElementById('resTotal').textContent = sgFmtEur(totRevenue);\n\n      var html = '';\n      for (var i = 0; i < rows.length; i++) {\n        var r = rows[i];\n        var growthPct = growthRates[i] === 0 ? T.baseline : ('+' + (growthRates[i] * 100).toFixed(0) + '%');\n        html += '<tr>'\n          + '<td data-label=\"' + T.colYear + '\">' + T.yearN.replace('%n%', r.year) + '<\/td>'\n          + '<td class=\"num\" data-label=\"' + T.colGrowth + '\">' + growthPct + '<\/td>'\n          + '<td class=\"num\" data-label=\"' + T.colRevenue + '\">' + sgFmtEur(r.revenue) + '<\/td>'\n          + '<td class=\"num\" data-label=\"' + T.colCum + '\">' + sgFmtEur(r.cum) + '<\/td>'\n          + '<\/tr>';\n      }\n      document.getElementById('calcTableBody').innerHTML = html;\n      document.getElementById('calcFootRevenue').textContent = sgFmtEur(totRevenue);\n      document.getElementById('calcFootCum').textContent = sgFmtEur(cum);\n\n      document.getElementById('calcResults').style.display = 'block';\n      renderRevenueChart(rows, growthRates);\n      document.getElementById('calcResults').scrollIntoView({ behavior: 'smooth', block: 'start' });\n    };\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', sgRevenueInit);\n  } else {\n    sgRevenueInit();\n  }\n})();\n<\/script>\n\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cen\u00edk 2026 Vyberte si sv\u016fj bal\u00ed\u010dek SmartGifty Syst\u00e9m d\u00e1rkov\u00fdch karet pro n\u00e1kupn\u00ed centra \u2013 t\u0159i bal\u00ed\u010dky p\u0159izp\u016fsoben\u00e9 va\u0161im pot\u0159eb\u00e1m. Basic Va\u0161e instance na sd\u00edlen\u00e9m serveru SmartGifty \u2013 rychl\u00fd a jednoduch\u00fd vstup do syst\u00e9mu d\u00e1rkov\u00fdch karet. 500&nbsp;\u20ac Jednor\u00e1zov\u00fd poplatek za nasazen\u00ed V\u0161echny 3 moduly (informa\u010dn\u00ed pult, administr\u00e1tor, n\u00e1jemce) Integrace plateb a API propojen\u00ed E-mailov\u00e1 podpora 7 &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/smartgifty.com\/cs\/pricing-detailed\/\"> <span class=\"screen-reader-text\">Detailed Pricing<\/span> Pokra\u010dovat ve \u010dten\u00ed &raquo;<\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-privacy-copy.php","meta":{"inline_featured_image":false,"footnotes":""},"class_list":["post-6718","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/pages\/6718\/"}],"collection":[{"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/pages\/"}],"about":[{"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/types\/page\/"}],"author":[{"embeddable":true,"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/users\/3\/"}],"replies":[{"embeddable":true,"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/comments\/?post=6718"}],"version-history":[{"count":10,"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/pages\/6718\/revisions\/"}],"predecessor-version":[{"id":7209,"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/pages\/6718\/revisions\/7209\/"}],"wp:attachment":[{"href":"https:\/\/smartgifty.com\/cs\/wp-json\/wp\/v2\/media\/?parent=6718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}