{"id":6850,"date":"2026-07-30T11:54:47","date_gmt":"2026-07-30T10:54:47","guid":{"rendered":"https:\/\/smartgifty.com\/cenik-calculator-2\/"},"modified":"2026-08-11T10:22:00","modified_gmt":"2026-08-11T09:22:00","slug":"cenik-calculator","status":"publish","type":"page","link":"https:\/\/smartgifty.com\/sl\/cenik-calculator\/","title":{"rendered":"Cenik kalkulator"},"content":{"rendered":"\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 cenik 2026 \u2013 embeddable blok. Vse scopano pod .sg-cenik. -->\n<section class=\"sg-cenik\" aria-label=\"SmartGifty cenik in paketi\">\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;}\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.sg-cenik .sg-foot{text-align:center;font-size:13px;color:#8a86a0;margin:26px 0 0;}\n\n\/* --- info ikona + popover --- *\/\n.sg-cenik tbody td:first-child{padding-right:10px;}\n.sg-cenik .sg-fn{display:inline-flex;align-items:center;gap:9px;}\n.sg-cenik a.sg-info{\n  -webkit-appearance:none;appearance:none;box-shadow:none;outline:none;text-decoration:none;\n  flex:0 0 auto;width:19px;height:19px;min-width:0;border-radius:50%;border:1.5px solid var(--sg-purple-light);\n  background:#fff;color:var(--sg-purple-light);font:700 12px\/1 \"Archivo\",serif;font-style:italic;\n  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;\n  transition:background .2s,color .2s,border-color .2s,transform .2s;\n}\n.sg-cenik a.sg-info:hover,.sg-cenik a.sg-info[aria-expanded=\"true\"]{\n  background:var(--sg-orange);border-color:var(--sg-orange);color:#fff;transform:scale(1.1);\n}\n.sg-cenik .sg-pop{\n  position:absolute;z-index:30;max-width:288px;width:max-content;\n  background:#fff;color:#4a4660;border:1px solid #ece8f5;border-radius:12px;\n  padding:13px 15px;font-size:13px;line-height:1.5;text-align:left;\n  box-shadow:0 18px 40px -14px rgba(44,0,124,.45);\n  opacity:0;transform:translateY(6px) scale(.96);pointer-events:none;\n  transition:opacity .18s ease,transform .18s cubic-bezier(.2,.8,.2,1);\n}\n.sg-cenik .sg-pop.is-open{opacity:1;transform:none;pointer-events:auto;}\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}\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\">Cenik 2026<\/span>\n    <h2 class=\"sg-title reveal\">Izberite paket <em>SmartGifty<\/em><\/h2>\n    <p class=\"sg-sub reveal\">Sistem darilnih kartic za nakupovalne centre &ndash; trije paketi, prilagojeni va\u0161im potrebam.<\/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\u0161a instanca na skupnem stre\u017eniku SmartGifty &ndash; hiter in preprost vstop v sistem darilnih kartic.<\/p>\n      <ul>\n        <li>Vsi 3 moduli (info to\u010dka, skrbnik, najemnik)<\/li>\n        <li>Integracija pla\u010dil in API povezave<\/li>\n        <li>E-po\u0161ta podpora 7 dni v tednu<\/li>\n      <\/ul>\n    <\/div>\n\n    <div class=\"sg-card is-featured reveal\" style=\"transition-delay:.15s\">\n      <span class=\"sg-badge\">Najbolj priljubljen<\/span>\n      <div class=\"sg-pkg\">Pro<\/div>\n      <p class=\"sg-desc\">Samostojna instanca na lastnem stre\u017eniku &ndash; popolna neodvisnost in prilagoditve po meri.<\/p>\n      <ul>\n        <li>Lasten stre\u017enik &ndash; popolna neodvisnost<\/li>\n        <li>Prilagoditev uporabni\u0161kega vmesnika<\/li>\n        <li>Integracije z zalednimi sistemi (ERP, BI&hellip;)<\/li>\n        <li>E-po\u0161tna in spletna 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\">Vse iz paketa Pro, nadgrajeno z onboarding managerjem, spletno trgovino in napredno analitiko.<\/p>\n      <ul>\n        <li>Onboarding manager<\/li>\n        <li>Spletna trgovina (web template)<\/li>\n        <li>BI poro\u010dila in AI analitika<\/li>\n        <li>Marketin\u0161ko svetovanje<\/li>\n      <\/ul>\n    <\/div>\n\n  <\/div>\n\n  <!-- TABELA -->\n  <div class=\"sg-table-head\">\n    <h3 class=\"reveal\">Kaj vsebuje vsak paket<\/h3>\n    <p class=\"reveal\">Pregled funkcionalnosti po paketih.<\/p>\n  <\/div>\n\n  <div class=\"sg-table-scroll reveal\">\n    <table>\n      <thead>\n        <tr>\n          <th>Funkcionalnost<\/th>\n          <th>Basic<\/th>\n          <th>Pro<\/th>\n          <th>Advanced<\/th>\n        <\/tr>\n      <\/thead>\n      <tbody>\n        <!-- Sklop A -->\n        <tr class=\"sg-band\"><td colspan=\"4\">Vklju\u010deno v vseh paketih <span class=\"band-tag\">&ndash; Basic, Pro, Advanced<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Priprava in konfiguracija sistema z izpisi, uporabni\u0161kimi ra\u010duni ter podporo pri uvedbi novega sistema (onboarding modul).\">Postavitev centra in onboarding modul<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Trije moduli: informacijska to\u010dka (izdaja in pregled kartic), skrbni\u0161tvo in ra\u010dunovodstvo (promet in poro\u010dila) ter najemnik (unov\u010devanje in pregled transakcij).\">Funkcionalnosti &ndash; 3 moduli<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Ve\u010d na\u010dinov unov\u010devanja darilne kartice: spletni dostop, povezava API, mobilna naprava ali terminal POS.\">Integracija pla\u010dil (ve\u010d opcij unov\u010devanja)<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Vmesnik API za povezavo z blagajno (izdaja in unov\u010devanje) ter API za spletno naro\u010danje in preverjanje stanja kartic; vklju\u010deni so dokumentacija in primeri.\">Ve\u010d vrst API povezav<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Osnovni jezik sistema je angle\u0161\u010dina, na voljo pa so vsi jeziki. Manjkajo\u010de prevode zagotovi naro\u010dnik, mi pa jih vklju\u010dimo brez dopla\u010dila.\">Ve\u010djezi\u010dnost<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Dodajanje darilnih kartic v Apple Wallet in Google Wallet; stanje se posodobi tudi ob unov\u010ditvi kartice.\">Integrirana Google in Apple denarnica<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Gostovanje v okolju AWS, urne varnostne kopije baze, nadzor delovanja, mese\u010dne posodobitve, izklju\u010dno HTTPS, ve\u010dfaktorska avtentikacija in neodvisni penetracijski testi.\">Za\u0161\u010dita in redna posodobitev stre\u017enika<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"E-po\u0161tna podpora za delovanje in uporabo sistema je vklju\u010dena v mese\u010dno naro\u010dnino. Dodatna podpora prek e-po\u0161te in spletnih platform je na voljo z dopla\u010dilom.\">E-po\u0161ta podpora 7 dni v tednu<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Pisna in video navodila v angle\u0161\u010dini so vklju\u010dena v ceno postavitve. Navodila v drugih jezikih so na voljo po dogovoru.\">Pisna in video navodila uporabe<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Tisk darilnih kartic iz razli\u010dnih materialov (PVC, BIO PVC, papir) in z razli\u010dnimi vrstami potiska; cena je odvisna od materiala, potiska in koli\u010dine.\">Dobava kartic (PVC, ECO, papir&hellip;)<\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Zakonita, po\u0161tena in pregledna obdelava osebnih podatkov, vklju\u010dno s privolitvami, pravicami posameznikov, bele\u017eenjem interakcij in visoko ravnjo varnosti.\">GDPR skladnost<\/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 in Advanced <span class=\"band-tag\">&ndash; dodatno k Basic<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Podpora prek e-po\u0161te ali spletnih platform v delovnem \u010dasu; obseg je odvisen od \u0161tevila licenc in izbranega paketa, dodatne ure pa se obra\u010dunajo posebej.\">E-po\u0161tna ali spletna podpora<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Samostojna instanca na lastnem virtualnem stre\u017eniku centru zagotavlja popolno neodvisnost in omogo\u010da prilagoditve sistema po meri.\">Postavitev samostojne entitete (lastna instanca)<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Prilagoditev uporabni\u0161kega vmesnika SmartGifty potrebam podjetja, vklju\u010dno z dovoljenji za posamezne uporabni\u0161ke module.\">Mo\u017enost spreminjanja uporabni\u0161kega vmesnika<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Raz\u0161iritev sistema s funkcionalnostmi po meri glede na potrebe naro\u010dnika.\">Mo\u017enost dodajanja drugih funkcionalnosti<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Svetovanje in pomo\u010d pri na\u010drtovanju poslovnih procesov ob uvedbi sistema.\">Pomo\u010d pri na\u010drtovanju procesov<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Enkratno spletno izobra\u017eevanje ali izobra\u017eevanje v \u017eivo za osebje centra in najemnikov. Pri izvedbi v \u017eivo se obra\u010dunajo stro\u0161ki prevoza in morebitne nastanitve.\">Izobra\u017eevanje<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Povezava z zalednimi sistemi, kot so blagajne, ra\u010dunovodski sistemi, interni programi zvestobe in orodja BI.\">Integracije z zalednimi sistemi (ERP, ra\u010dunovodski, Loyalty, BI&hellip;)<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Razvoj novih povezav API po meri za posebne potrebe naro\u010dnika.\">Mo\u017enost razvoja novih API-jev<\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"API za statistiko prodaje in porabe darilnih kartic ter povezave z zalednimi ra\u010dunovodskimi sistemi.\">API za statistiko<\/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\">Samo Advanced <span class=\"band-tag\">&ndash; najvi\u0161ji paket<\/span><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Priprava in po\u0161iljanje vpra\u0161alnikov najemnikom, popis opreme in potreb, e-po\u0161tna komunikacija o projektu ter en obisk na lokaciji centra.\">Onboarding manager<\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Standardizirana spletna trgovina SmartGifty: postavitev in objava, pla\u010dilni modul, povezava s sistemom ter prilagoditev vsebine in barv naro\u010dnika.\">Spletna stran za naro\u010dilo kartic (web template)<\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Statistika in poro\u010dila BI o prodanih, izdanih in unov\u010denih darilnih karticah po centrih in obdobjih, vklju\u010dno s prilagojenimi mese\u010dnimi poro\u010dili.\">BI poro\u010dila<\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Pogovorni pomo\u010dnik AI, ki razume podatke o darilnih karticah in jih samodejno pretvori v pregledne, vsebinsko bogate grafe in vizualizacije.\">AI analitika<\/td><td data-v=\"0\"><\/td><td data-v=\"0\"><\/td><td data-v=\"1\"><\/td><\/tr>\n        <tr class=\"reveal-row\"><td data-info=\"Marketin\u0161ka podpora pri pripravi materialov, ogla\u0161evanju in ozna\u010devanju v nakupovalnem centru na podlagi dolgoletnih izku\u0161enj z darilnimi karticami.\">Marketin\u0161ko svetovanje<\/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\">Mo\u017ene dodatne opcije in storitve na zahtevo.<\/p>\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=\"vklju\u010deno\"><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=\"ni vklju\u010deno\"><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  \/* --- info ikone + popover --- *\/\n  var pop=document.createElement('div');\n  pop.className='sg-pop';pop.setAttribute('role','tooltip');\n  root.appendChild(pop);\n  var current=null;\n\n  function closePop(){\n    if(!current)return;\n    current.setAttribute('aria-expanded','false');\n    pop.classList.remove('is-open');current=null;\n  }\n  function openPop(btn){\n    pop.textContent=btn.getAttribute('data-info')||'';\n    pop.classList.add('is-open');\n    btn.setAttribute('aria-expanded','true');\n    current=btn;\n    \/\/ pozicija relativno na .sg-cenik (ki je position:relative)\n    var rr=root.getBoundingClientRect(), br=btn.getBoundingClientRect();\n    var pw=pop.offsetWidth, ph=pop.offsetHeight;\n    var left=br.left-rr.left+br.width\/2-pw\/2;\n    left=Math.max(12,Math.min(left,root.clientWidth-pw-12));\n    var top=br.bottom-rr.top+9;\n    if(top+ph>root.clientHeight-8){ top=br.top-rr.top-ph-9; } \/\/ ni prostora spodaj -> nad ikono\n    pop.style.left=left+'px';pop.style.top=top+'px';\n  }\n\n  root.querySelectorAll('td[data-info]').forEach(function(td){\n    var info=td.getAttribute('data-info');\n    var btn=document.createElement('a');\n    btn.href='javascript:void(0)';btn.setAttribute('role','button');btn.className='sg-info';\n    btn.setAttribute('aria-label','Opis funkcionalnosti');\n    btn.setAttribute('aria-expanded','false');\n    btn.setAttribute('data-info',info);btn.textContent='i';\n    var span=document.createElement('span');\n    span.className='sg-fn';\n    span.innerHTML='<span>'+td.innerHTML+'<\/span>';\n    span.appendChild(btn);\n    td.innerHTML='';td.appendChild(span);\n    btn.addEventListener('click',function(e){\n      e.stopPropagation();\n      if(current===btn){closePop();}else{closePop();openPop(btn);}\n    });\n  });\n  document.addEventListener('click',function(e){ if(current && !pop.contains(e.target)) closePop(); });\n  document.addEventListener('keydown',function(e){ if(e.key==='Escape') closePop(); });\n  window.addEventListener('resize',closePop);\n  var sc=root.querySelector('.sg-table-scroll'); if(sc) sc.addEventListener('scroll',closePop);\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:.15,rootMargin:'0px 0px -8% 0px'});\n  targets.forEach(function(t){ io.observe(t); });\n})();\n<\/script>\n<\/section>\n\n\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js@4\"><\/script>\n<style>\n:root {\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* {\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: \"Row\";\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: \"Vmesna vsota\";\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 kalkulator cen<\/h1>\n      <div class=\"subtitle calculator-description\">\n        <p>\n          Za la\u017eji izra\u010dun enkratne postavitve in mese\u010dne naro\u010dnine smo pripravili kalkulator, kamor vnesete \u0161tevilo najemnikov v sistemu <strong>SmartGifty<\/strong>.\n        <\/p>\n\n        <p class=\"section-heading\"><strong>Za\u010detna postavitev sistema: &euro;3.000<\/strong><\/p>\n        <p>Podrobnosti o obsegu in vsebini postavitve so v predstavitvi.<\/p>\n\n        <p class=\"section-heading\"><strong>Izra\u010dun mese\u010dnih licenc<\/strong><\/p>\n        <p>\n          Za izra\u010dun mese\u010dne naro\u010dnine vnesite \u0161tevilo najemnikov. Privzeto sta potrebni \u0161e dve dodatni licenci:\n        <\/p>\n        <ul>\n          <li><strong>Info Point:<\/strong> For card issuance.<\/li>\n          <li><strong>Admin:<\/strong> For complete system oversight.<\/li>\n        <\/ul>\n\n        <p><em>Opomba: vsaka dodatna to\u010dka izdaje (npr. spletna stran ali avtomat) zahteva svojo licenco.<\/em><\/p>\n      <\/div>\n    <\/header>\n\n    <section class=\"card\">\n      <label class=\"field\">\n        <span class=\"label\">\u0160tevilo nakupovalnih centrov<\/span>\n        <input id=\"sg-centers\" class=\"input\" type=\"number\" min=\"1\" max=\"8\" step=\"1\" placeholder=\"2\" \/>\n        <span class=\"hint\">Vnesite \u0161tevilo centrov<\/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\">Vmesna vsota<\/div>\n          <div id=\"sg-subtotal\" class=\"resultValue\" style=\"font-weight: 400;\">&mdash;<\/div>\n        <\/div>\n        <div class=\"resultStat\">\n          <div class=\"resultLabel\">Popust<\/div>\n          <div id=\"sg-discountPct\" class=\"resultValue small\">&mdash;<\/div>\n        <\/div>\n        <div class=\"resultStat resultStat--accent\">\n          <div class=\"resultLabel\">Skupaj<\/div>\n          <div id=\"sg-suma\" class=\"resultValue accent\">&mdash;<\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"tableWrap\">\n        <table class=\"table\">\n          <thead>\n            <tr>\n              <th>Center<\/th>\n              <th class=\"num\">Trgovine<\/th>\n              <th class=\"num\">Vmesna vsota<\/th>\n              <th class=\"num\">Vmesna vsota (s popustom)<\/th>\n            <\/tr>\n          <\/thead>\n          <tbody id=\"sg-breakdown\">\n            <tr>\n              <td colspan=\"4\" class=\"muted\">Vnesite \u0161tevilo centrov, nato licence na center.<\/td>\n            <\/tr>\n          <\/tbody>\n          <tfoot>\n            <tr class=\"sumRow\">\n              <td><strong>Skupaj<\/strong><\/td>\n              <td id=\"sg-sumQty\" class=\"num\">&mdash;<\/td>\n              <td id=\"sg-sumTotal\" class=\"num\">&mdash;<\/td>\n              <td id=\"sg-sumTotalPopusted\" class=\"num\">&mdash;<\/td>\n            <\/tr>\n          <\/tfoot>\n        <\/table>\n      <\/div>\n    <\/section>\n  <\/main>\n<\/div>\n\n<script>\n(function() {\n  function sgInit() {\n  var els = {\n    centers: document.getElementById(\"sg-centers\"),\n    centerInputs: document.getElementById(\"sg-centerInputs\"),\n    status: document.getElementById(\"sg-status\"),\n    subtotal: document.getElementById(\"sg-subtotal\"),\n    discountPct: document.getElementById(\"sg-discountPct\"),\n    suma: document.getElementById(\"sg-suma\"),\n    breakdown: document.getElementById(\"sg-breakdown\"),\n    sumQty: document.getElementById(\"sg-sumQty\"),\n    sumTotal: document.getElementById(\"sg-sumTotal\"),\n    sumTotalDiscounted: document.getElementById(\"sg-sumTotalPopusted\"),\n  };\n\n  var BASE_FEE_PER_CENTER = 400;\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 = {\n    1: 0,\n    2: 20,\n    3: 22,\n    4: 25,\n    5: 30,\n    6: 35,\n    7: 42,\n    8: 50,\n  };\n\n  var EMPTY_BREAKDOWN =\n    '<tr><td colspan=\"4\" class=\"muted\">Vnesite \u0161tevilo centrov in nato \u0161tevilo licenc na center.<\/td><\/tr>';\n\n  var lastNumCenters = null;\n\n  function setStatus(msg, type) {\n    type = type || \"info\";\n    els.status.textContent = msg || \"\";\n    if (type === \"error\") {\n      els.status.classList.add(\"error\");\n    } else {\n      els.status.classList.remove(\"error\");\n    }\n  }\n\n  function formatEur(value) {\n    var n = Number(value);\n    if (!Number.isFinite(n)) return \"\\u2014\";\n    return new Intl.NumberFormat(\"sl-SI\", { style: \"currency\", currency: \"EUR\" }).format(n);\n  }\n\n  function formatNum(value) {\n    var n = Number(value);\n    if (!Number.isFinite(n)) return \"\\u2014\";\n    return new Intl.NumberFormat(\"sl-SI\", { maximumFractionDigits: 4 }).format(n);\n  }\n\n  function validateTiers(tiers) {\n    var warnings = [];\n    for (var idx = 0; idx < tiers.length; idx++) {\n      var tier = tiers[idx];\n      if (!Number.isFinite(tier.from) || !Number.isFinite(tier.to) || tier.from < 1 || tier.to < tier.from) {\n        throw new Error(\"Neveljaven razpon cenovnega razreda \" + tier.from + \"\\u2013\" + tier.to + \".\");\n      }\n      if (!Number.isFinite(tier.price) || tier.price < 0) {\n        throw new Error(\"Neveljavna cena v cenovnem razredu \" + tier.from + \"\\u2013\" + tier.to + \".\");\n      }\n      if (idx === 0) continue;\n      var prev = tiers[idx - 1];\n      if (tier.from <= prev.to) {\n        throw new Error(\"Prekrivajo\u010di se cenovni razredi: \" + prev.from + \"\\u2013\" + prev.to + \" se prekriva z \" + tier.from + \"\\u2013\" + tier.to + \".\");\n      }\n      if (tier.from !== prev.to + 1) {\n        warnings.push(\"Vrzel med cenovnimi razredi: \" + (prev.to + 1) + \"\\u2013\" + (tier.from - 1) + \" nima dolo\u010dene cene.\");\n      }\n    }\n    return warnings;\n  }\n\n  function computeLicenceSubtotal(tiers, stores) {\n    var licencesTotal = 0;\n    for (var i = 0; i < tiers.length; i++) {\n      var tier = tiers[i];\n      var qty = Math.max(0, Math.min(stores, tier.to) - tier.from + 1);\n      if (qty <= 0) continue;\n      licencesTotal += qty * tier.price;\n    }\n    var lastTier = tiers[tiers.length - 1];\n    if (lastTier &#038;&#038; stores > lastTier.to) {\n      licencesTotal += (stores - lastTier.to) * lastTier.price;\n    }\n    return licencesTotal;\n  }\n\n  function computeBreakdown(tiers, stores) {\n    var n = Number(stores);\n    var storesInt = (Number.isFinite(n) ? (Number.isInteger(n) ? (n >= 0 ? n : 0) : 0) : 0);\n    if (storesInt <= 0) {\n      return { total: 0, licencesTotal: 0 };\n    }\n    var licencesTotal = computeLicenceSubtotal(tiers, storesInt);\n    return {\n      total: BASE_FEE_PER_CENTER + licencesTotal,\n      licencesTotal: licencesTotal,\n    };\n  }\n\n  function getCenterDiscount(centers) {\n    var n = parseInt(centers, 10);\n    if (!Number.isInteger(n) || n < 1 || n > 8) return 0;\n    return CENTER_DISCOUNTS[n] || 0;\n  }\n\n  function parseMultipleNumbers(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 renderCenterInputs(count, prevValues) {\n    prevValues = prevValues || [];\n    els.centerInputs.innerHTML = \"\";\n    if (!count || count < 1 || count > 8) return;\n\n    for (var idx = 1; idx <= count; idx++) {\n      var label = document.createElement(\"label\");\n      label.className = \"field center-block\";\n      var value = prevValues[idx - 1] || \"\";\n      label.innerHTML =\n        '<span class=\"label\">Licence (center ' + idx + ')<\/span>' +\n        '<input class=\"input center-stores\" type=\"text\" inputmode=\"numeric\" placeholder=\"npr. 10\" data-center=\"' + idx + '\" \/>';\n      var input = label.querySelector(\"input\");\n      input.value = String(value);\n      input.addEventListener(\"input\", updateResult);\n      input.addEventListener(\"change\", updateResult);\n      els.centerInputs.appendChild(label);\n    }\n  }\n\n  function getCenterStoreCounts() {\n    var inputs = els.centerInputs.querySelectorAll(\".center-stores\");\n    var counts = [];\n    for (var i = 0; i < inputs.length; i++) {\n      counts.push(parseMultipleNumbers(inputs[i].value));\n    }\n    return counts;\n  }\n\n  function getCenterStoreValues() {\n    var inputs = els.centerInputs.querySelectorAll(\".center-stores\");\n    var values = [];\n    for (var i = 0; i < inputs.length; i++) {\n      values.push(inputs[i].value);\n    }\n    return values;\n  }\n\n  function clearResult() {\n    els.subtotal.textContent = \"\\u2014\";\n    els.discountPct.textContent = \"\\u2014\";\n    els.suma.textContent = \"\\u2014\";\n    els.breakdown.innerHTML = EMPTY_BREAKDOWN;\n    els.sumQty.textContent = \"\\u2014\";\n    els.sumTotal.textContent = \"\\u2014\";\n    els.sumTotalDiscounted.textContent = \"\\u2014\";\n  }\n\n  function renderBreakdown(centerRows, totalSubtotal, centersNum, tierWarnings) {\n    var discountPct = getCenterDiscount(centersNum);\n    var finalTotal = totalSubtotal * (1 - discountPct \/ 100);\n\n    els.subtotal.textContent = formatEur(totalSubtotal);\n    els.discountPct.textContent = discountPct > 0 ? discountPct + \"%\" : \"\\u2014\";\n    els.suma.textContent = formatEur(finalTotal);\n\n    if (tierWarnings.length) {\n      setStatus(\"Opozorilo: \" + tierWarnings.join(\" \"), \"error\");\n    } else {\n      setStatus(\"\", \"info\");\n    }\n\n    if (!centerRows.length) {\n      clearResult();\n      return;\n    }\n\n    var sumQty = 0;\n    for (var i = 0; i < centerRows.length; i++) {\n      sumQty += centerRows[i].stores;\n    }\n    els.sumQty.textContent = formatNum(sumQty);\n    els.sumTotal.textContent = formatEur(totalSubtotal);\n    els.sumTotalDiscounted.textContent = formatEur(finalTotal);\n\n    var discountFactor = 1 - discountPct \/ 100;\n    var html = \"\";\n    for (var j = 0; j < centerRows.length; j++) {\n      var row = centerRows[j];\n      var rowDiscounted = row.subtotal * discountFactor;\n      html += '<tr><td data-label=\"Center\">Center ' + row.centerIndex + '<\/td>' +\n        '<td class=\"num\" data-label=\"Licence\">' + formatNum(row.stores) + '<\/td>' +\n        '<td class=\"num\" data-label=\"Vmesna vsota\">' + formatEur(row.subtotal) + '<\/td>' +\n        '<td class=\"num\" data-label=\"Vmesna vsota (s popustom)\">' + formatEur(rowDiscounted) + '<\/td><\/tr>';\n    }\n    els.breakdown.innerHTML = html;\n  }\n\n  function parseCenters() {\n    var raw = els.centers.value.trim();\n    if (raw === \"\") return null;\n    var n = Number(raw);\n    if (!Number.isFinite(n) || !Number.isInteger(n) || n < 1 || n > 8) return null;\n    return n;\n  }\n\n  function updateResult() {\n    try {\n      var numCenters = parseCenters();\n\n      if (numCenters == null) {\n        if (lastNumCenters !== 0) {\n          renderCenterInputs(0);\n          lastNumCenters = 0;\n        }\n        clearResult();\n        setStatus(\"Vnesite \u0161tevilo nakupovalnih centrov (1\u20138). Za ve\u010d kot 8 centrov nas kontaktirajte za ponudbo po meri.\");\n        return;\n      }\n\n      if (numCenters !== lastNumCenters) {\n        renderCenterInputs(numCenters, getCenterStoreValues());\n        lastNumCenters = numCenters;\n      }\n\n      var counts = getCenterStoreCounts();\n      if (counts.length !== numCenters) {\n        clearResult();\n        return;\n      }\n\n      var hasNull = false;\n      for (var i = 0; i < counts.length; i++) {\n        if (counts[i] === null) { hasNull = true; break; }\n      }\n      if (hasNull) {\n        clearResult();\n        setStatus(\"V vsako polje vnesite samo nenegativna cela \u0161tevila.\", \"error\");\n        return;\n      }\n\n      var warnings = validateTiers(TIERS);\n      var centerRows = [];\n      var totalSubtotal = 0;\n\n      for (var k = 0; k < counts.length; k++) {\n        var stores = counts[k] || 0;\n        var result = computeBreakdown(TIERS, stores);\n        totalSubtotal += result.total;\n        centerRows.push({ centerIndex: k + 1, stores: stores, subtotal: result.total });\n      }\n\n      renderBreakdown(centerRows, totalSubtotal, numCenters, warnings);\n    } catch (error) {\n      clearResult();\n      setStatus((error ? error.message : null) || String(error), \"error\");\n    }\n  }\n\n  els.centers.addEventListener(\"input\", updateResult);\n  els.centers.addEventListener(\"change\", updateResult);\n\n  clearResult();\n  setStatus(\"Vnesite \u0161tevilo nakupovalnih centrov (1\u20138). Za ve\u010d kot 8 centrov nas kontaktirajte za ponudbo po meri.\");\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", sgInit);\n  } else {\n    sgInit();\n  }\n})();\n<\/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 kalkulator rasti prihodkov<\/h2>\n      <p>Ocena dodatnega dobi\u010dka, ki ga lahko digitalni sistem darilnih kartic prinese va\u0161emu podjetju v naslednjih 5 letih.<\/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\">Vrsta poslovanja<\/label>\n          <select id=\"calcType\" class=\"calc-select\" onchange=\"window.sgUpdateUI()\">\n            <option value=\"\">-- Izberite vrsto poslovanja --<\/option>\n            <option value=\"shopping_center\">Nakupovalni center<\/option>\n            <option value=\"multi_location\">Ve\u010dlokacijsko podjetje<\/option>\n          <\/select>\n        <\/div>\n\n        <div id=\"giftCardStatusSection\" class=\"calc-field full\" style=\"display:none\">\n          <label class=\"calc-label\">Status darilnih kartic<\/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\">\u0160e nimamo darilnih kartic<\/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\">Imamo darilne bone<\/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\">\u017de imamo darilne kartice<\/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\">\u0160tevilo lokacij nakupovalnih centrov<\/label>\n          <input id=\"calcSCLocations\" class=\"calc-input\" type=\"number\" min=\"1\" max=\"10\" step=\"1\" value=\"1\" placeholder=\"e.g. 1\" onchange=\"window.sgUpdateUI()\">\n        <\/div>\n\n        <div id=\"scNumTrgovineSection\" style=\"display:none\"><\/div>\n\n        <div id=\"mlNumLocations\" class=\"calc-field\" style=\"display:none\">\n          <label class=\"calc-label\" for=\"calcMLLocations\">\u0160tevilo lokacij<\/label>\n          <input id=\"calcMLLocations\" class=\"calc-input\" type=\"number\" min=\"1\" max=\"100\" step=\"1\" value=\"1\" placeholder=\"e.g. 5\">\n        <\/div>\n\n        <div id=\"yearlyRevenueSection\" class=\"calc-field full\" style=\"display:none\">\n          <label class=\"calc-label\" for=\"calcYearlyRevenue\">Letni prihodek (&euro;)<\/label>\n          <input id=\"calcYearlyRevenue\" class=\"calc-input\" type=\"text\" inputmode=\"numeric\" placeholder=\"e.g. 500000\">\n        <\/div>\n\n        <div class=\"calc-field full\">\n          <button class=\"calc-btn\" type=\"button\" onclick=\"window.sgCalcRun()\">Izra\u010dunaj 5-letno projekcijo<\/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\">Prihodek v 1. letu<\/div>\n          <div class=\"result-stat-value\" id=\"resYear1\">&mdash;<\/div>\n        <\/div>\n        <div class=\"result-stat\">\n          <div class=\"result-stat-label\">Prihodek v 5. letu<\/div>\n          <div class=\"result-stat-value\" id=\"resYear5\">&mdash;<\/div>\n        <\/div>\n        <div class=\"result-stat result-stat--accent\">\n          <div class=\"result-stat-label\">Skupaj v 5 letih<\/div>\n          <div class=\"result-stat-value accent\" id=\"resTotal\">&mdash;<\/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>Year<\/th>\n                <th class=\"num\">Stopnja rasti<\/th>\n                <th class=\"num\">Prihodek od darilnih kartic<\/th>\n                <th class=\"num\">Kumulativa<\/th>\n              <\/tr>\n            <\/thead>\n            <tbody id=\"calcTableBody\"><\/tbody>\n            <tfoot>\n              <tr>\n                <td data-label=\"\"><strong>Skupaj (5 let)<\/strong><\/td>\n                <td class=\"num\" data-label=\"Stopnja rasti\">&mdash;<\/td>\n                <td class=\"num\" id=\"calcFootRevenue\" data-label=\"Prihodek od darilnih kartic\">&mdash;<\/td>\n                <td class=\"num\" id=\"calcFootCum\" data-label=\"Kumulativa\">&mdash;<\/td>\n              <\/tr>\n            <\/tfoot>\n          <\/table>\n        <\/div>\n\n        <div class=\"calc-chart-wrap\">\n          <canvas id=\"calc-revenue-chart\" aria-label=\"Letni prihodek in kumulativa\"><\/canvas>\n        <\/div>\n      <\/div>\n\n      <div class=\"benefits-card\">\n        <div class=\"benefits-title\">Onkraj \u0161tevilk &mdash; zakaj 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\"\/><\/svg><\/span>\n            <span><strong>Zmogljivo marketin\u0161ko orodje<\/strong> &mdash; izbolj\u0161ajte izku\u0161njo obstoje\u010dih strank s personaliziranimi digitalnimi darilnimi karticami.<\/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\"\/><\/svg><\/span>\n            <span><strong>Pridobite nove stranke<\/strong> &mdash; darilne kartice so eden naju\u010dinkovitej\u0161ih na\u010dinov za pridobitev novih kupcev.<\/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\"\/><\/svg><\/span>\n            <span><strong>Prihranite \u010das in denar z digitalizacijo<\/strong> &mdash; odpravite papirnate bone, zmanj\u0161ajte administracijo in pridobite analitiko v realnem \u010dasu.<\/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    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 'Leto ' + 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: 'Prihodek od darilnih kartic',\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: 'Kumulativa',\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: 'Letni prihodek', 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: 'Kumulativa', 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('sl-SI', { 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('scNumTrgovineSection').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('scNumTrgovineSection');\n\n          if (numLocations > 1) {\n            var html = '<div class=\"calc-field full\">';\n            html += '<label class=\"calc-label\">\u0160tevilo trgovin na lokacijo<\/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>Opomba:<\/strong> Prihodek se izra\u010duna po razredih: 1\u201350 trgovin = 115.000 \u20ac, 51\u2013100 trgovin = 255.000 \u20ac, 101\u2013150 trgovin = 360.000 \u20ac, 151 ali ve\u010d trgovin = 450.000 \u20ac.';\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=\"scTrgovine' + i + '\">Lokacija ' + i + ' \u2013 \u0161tevilo trgovin<\/label>';\n              html += '<input id=\"scTrgovine' + i + '\" class=\"calc-input\" type=\"number\" min=\"1\" step=\"1\" value=\"50\" placeholder=\"npr. 50\">';\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=\"scTrgovine1\">\u0160tevilo trgovin v centru<\/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>Opomba:<\/strong> Prihodek se izra\u010duna po razredih: 1\u201350 trgovin = 115.000 \u20ac, 51\u2013100 trgovin = 255.000 \u20ac, 101\u2013150 trgovin = 360.000 \u20ac, 151 ali ve\u010d trgovin = 450.000 \u20ac.';\n            html += '<\/p>';\n            html += '<input id=\"scTrgovine1\" class=\"calc-input\" type=\"number\" min=\"1\" step=\"1\" value=\"50\" placeholder=\"npr. 50\">';\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('Izberite vrsto poslovanja.'); return; }\n      if (!status) { alert('Izberite status darilnih kartic.'); 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('scTrgovine' + i);\n            if (storesInput) {\n              var stores = parseInt(storesInput.value) || 0;\n              if (stores <= 0) { alert('Vnesite veljavno \u0161tevilo trgovin za lokacijo ' + 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('Vnesite veljaven letni prihodek.'); 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('Vnesite veljaven letni prihodek.'); 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('Vnesite veljaven letni prihodek.'); 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 ? 'Izhodi\u0161\u010de' : ('+' + (growthRates[i] * 100).toFixed(0) + '%');\n        html += '<tr>'\n          + '<td data-label=\"Leto\">Leto ' + r.year + '<\/td>'\n          + '<td class=\"num\" data-label=\"Stopnja rasti\">' + growthPct + '<\/td>'\n          + '<td class=\"num\" data-label=\"Prihodek od darilnih kartic\">' + sgFmtEur(r.revenue) + '<\/td>'\n          + '<td class=\"num\" data-label=\"Kumulativa\">' + 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\n","protected":false},"excerpt":{"rendered":"<p>Cenik 2026 Izberite paket SmartGifty Sistem darilnih kartic za nakupovalne centre &ndash; trije paketi, prilagojeni va\u0161im potrebam. Basic Va\u0161a instanca na skupnem stre\u017eniku SmartGifty &ndash; hiter in preprost vstop v sistem darilnih kartic. Vsi 3 moduli (info to\u010dka, skrbnik, najemnik) Integracija pla\u010dil in API povezave E-po\u0161ta podpora 7 dni v tednu Najbolj priljubljen Pro Samostojna &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/smartgifty.com\/sl\/cenik-calculator\/\"> <span class=\"screen-reader-text\">Cenik kalkulator<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":0,"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-6850","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/pages\/6850\/"}],"collection":[{"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/pages\/"}],"about":[{"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/types\/page\/"}],"replies":[{"embeddable":true,"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/comments\/?post=6850"}],"version-history":[{"count":3,"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/pages\/6850\/revisions\/"}],"predecessor-version":[{"id":6860,"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/pages\/6850\/revisions\/6860\/"}],"wp:attachment":[{"href":"https:\/\/smartgifty.com\/sl\/wp-json\/wp\/v2\/media\/?parent=6850"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}