{"id":1660,"date":"2026-03-02T16:17:51","date_gmt":"2026-03-02T15:17:51","guid":{"rendered":"https:\/\/www.cwo.de\/cwo-calculator\/"},"modified":"2026-03-10T14:39:49","modified_gmt":"2026-03-10T13:39:49","slug":"cwo-calculator","status":"publish","type":"page","link":"https:\/\/www.cwo.de\/en\/cwo-calculator\/","title":{"rendered":"CWO Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1660\" class=\"elementor elementor-1660 elementor-1418\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c8ebc10 e-flex e-con-boxed e-con e-parent\" data-id=\"c8ebc10\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-eb7de2e elementor-widget elementor-widget-heading\" data-id=\"eb7de2e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Calculate now<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-118a09f elementor-widget elementor-widget-text-editor\" data-id=\"118a09f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p style=\"text-align: center;\">Find out how much you can save with CWO<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-db61427 e-flex e-con-boxed e-con e-parent\" data-id=\"db61427\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9af1ca1 elementor-widget elementor-widget-html\" data-id=\"9af1ca1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div>\n\n\n\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Open+Sans:wght@300;400;500;600;700;800&amp;display=swap\" rel=\"stylesheet\">\n<style>\n.cwo-calc-scope button,\n.cwo-calc-scope input[type=\"button\"],\n.cwo-calc-scope input[type=\"submit\"],\n.cwo-calc-scope .btn,\n.cwo-calc-scope .ptab,\n.cwo-calc-scope .depr-btn,\n.cwo-calc-scope .timeline-toggle-btn,\n.cwo-calc-scope .ampel-preset-btn {\n\n  all: unset;\n  font-family: inherit;\n  cursor: pointer;\n  display: inline-block;\n}\n\n.cwo-calc-scope .ampel-presets,\n.cwo-calc-scope .depr-toggle,\n.cwo-calc-scope .timeline-toggle {\n  display:flex;\n  width:100%;\n}\n\n.cwo-calc-scope .ampel-preset-btn,\n.cwo-calc-scope .depr-btn,\n.cwo-calc-scope .timeline-toggle-btn {\n  flex:1 1 0%;\n  display:flex;\n  align-items:center;\n  justify-content:center;\n}\n\n.cwo-calc-scope .ptab {\n  padding:16px 32px;\n  font-size:14px;\n  font-weight:500;\n  color:var(--gray);\n  background:none;\n  border:none;\n  border-bottom:3px solid transparent;\n  transition:.2s;\n}\n\n.cwo-calc-scope .ptab.active {\n  color:var(--blue);\n  border-bottom-color:var(--green);\n  font-weight:600;\n}\n\n.cwo-calc-scope .depr-btn,\n.cwo-calc-scope .timeline-toggle-btn,\n.cwo-calc-scope .ampel-preset-btn {\n  padding:10px 8px;\n  border:none;\n  background:var(--white);\n  font-size:12px;\n  font-weight:600;\n}\n\n.cwo-calc-scope .depr-btn.active,\n.cwo-calc-scope .timeline-toggle-btn.active,\n.cwo-calc-scope .ampel-preset-btn.active {\n  background:var(--blue);\n  color:#fff;\n}\n*{margin:0;padding:0;box-sizing:border-box}\n:root{\n  --blue:#003781;--blue-dark:#00275a;--blue-light:#e8f0fe;\n  --green:#8BC53F;--green-dark:#6fa830;\n  --gray:#6c7a89;--gray-light:#f5f7fa;--border:#dfe3e8;\n  --white:#fff;--text:#1a1a2e;\n  --red:#e74c3c;--orange:#f39c12;\n}\nbody{font-family:'Open Sans',sans-serif;color:var(--text);background:var(--gray-light);line-height:1.6;-webkit-font-smoothing:antialiased}\n.header{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}\n.header-inner{max-width:1200px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between}\n.logo{text-decoration:none;display:flex;align-items:center}\n.nav-back{color:var(--blue);text-decoration:none;font-size:13px;font-weight:600;display:flex;align-items:center;gap:4px}\n.step-bar{background:var(--white);border-bottom:1px solid var(--border);padding:12px 32px}\n.step-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray)}\n.step-inner .active{color:var(--blue);font-weight:600}\n.step-inner .sep{color:var(--border)}\n.page-title{text-align:center;padding:40px 32px 8px;font-size:28px;font-weight:300;color:var(--blue)}\n.page-sub{text-align:center;padding:0 32px 32px;font-size:15px;color:var(--gray)}\n.product-tabs{display:flex;justify-content:center;gap:0;background:var(--white);border-bottom:1px solid var(--border);flex-wrap:wrap}\n.ptab{padding:16px 32px;font-size:14px;font-weight:500;color:var(--gray);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-family:inherit;transition:all .2s}\n.ptab.active{color:var(--blue);border-bottom-color:var(--green);font-weight:600}\n.ptab:hover{color:var(--blue)}\n.calc-section{display:none;max-width:1100px;margin:0 auto;padding:32px}\n.calc-section.active{display:block}\n.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}\n.input-panel{background:var(--white);border-radius:12px;padding:28px;border:1px solid var(--border)}\n.input-panel h3{font-size:17px;font-weight:700;color:var(--blue);margin-bottom:16px;display:flex;align-items:center;gap:8px}\n.input-panel h3 .ico{font-size:22px}\n.field{margin-bottom:16px}\n.field label{display:block;font-size:12px;font-weight:600;color:var(--text);margin-bottom:4px}\n.field .hint{font-size:11px;color:var(--gray);margin-bottom:4px;font-style:italic}\n.field input[type=range]{width:100%;accent-color:var(--green);height:6px;margin:6px 0}\n.field input[type=number]{width:100%;padding:10px 8px;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:14px}\n.field .range-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--gray)}\n.field .value-display{font-size:24px;font-weight:800;color:var(--blue);text-align:center;padding:4px 0}\n.field .value-unit{font-size:13px;font-weight:400;color:var(--gray)}\n.field .currency-wrapper{position:relative;display:flex;align-items:center}\n.field .currency-wrapper input[type=number]{flex:1}\n.field .currency-wrapper::after{content:'\u20ac';position:absolute;right:8px;color:var(--gray);font-weight:600;pointer-events:none}\n.result-panel{background:var(--white);border-radius:12px;padding:28px;border:1px solid var(--border);display:flex;flex-direction:column}\n.result-panel h3{font-size:17px;font-weight:700;color:var(--blue);margin-bottom:16px}\n.cost-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}\n.cost-row:last-of-type{border-bottom:none}\n.cost-row .label{color:var(--gray)}\n.cost-row .amount{font-weight:700;color:var(--text)}\n.cost-row.sub{padding:6px 0 6px 16px;font-size:12px}\n.cost-row.sub .label{color:#999}\n.cost-row.sub .amount{font-weight:500;color:#999}\n.cost-row.total{border-top:2px solid var(--blue);margin-top:6px;padding-top:14px}\n.cost-row.total .label{color:var(--blue);font-weight:700;font-size:14px}\n.cost-row.total .amount{color:var(--blue);font-size:18px}\n.savings-box{background:linear-gradient(135deg,var(--blue),var(--blue-dark));border-radius:10px;padding:20px;color:#fff;margin-top:16px}\n.savings-box .big{font-size:32px;font-weight:800;line-height:1;margin-bottom:4px}\n.savings-box .big .green{color:#fff}\n.savings-box .desc{font-size:12px;color:rgba(255,255,255,.8)}\n.savings-box .roi{margin-top:10px;font-size:11px;color:rgba(255,255,255,.6);border-top:1px solid rgba(255,255,255,.15);padding-top:8px}\n.savings-box .fte{font-size:14px;color:rgba(255,255,255,.95);margin-top:8px}\n.savings-box .fte strong{color:var(--green);font-size:20px;font-weight:800}\n.section-label{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:1px;margin:16px 0 8px;padding-top:12px;border-top:1px solid var(--border);display:flex;align-items:center;gap:6px}\n.section-label .ico{font-size:14px}\n.section-label.toggle{cursor:pointer;user-select:none}\n.section-label.toggle .arrow{margin-left:auto;font-size:10px;font-weight:400}\n.collapsible{display:none}\n.collapsible.open{display:block}\n.depr-toggle{display:flex;gap:0;margin:12px 0 16px;border-radius:6px;overflow:hidden;border:1px solid var(--border)}\n.depr-btn{flex:1;padding:10px 8px;border:none;background:var(--white);color:var(--gray);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;text-align:center}\n.depr-btn.active{background:var(--blue);color:#fff}\n.depr-btn:hover:not(.active){background:var(--blue-light)}\n.timeline-toggle{display:flex;gap:0;margin:12px 0 16px;border-radius:6px;overflow:hidden;border:1px solid var(--border)}\n.timeline-toggle-btn{flex:1;padding:10px 8px;border:none;background:var(--white);color:var(--gray);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;text-align:center}\n.timeline-toggle-btn.active{background:var(--blue);color:#fff}\n.timeline-toggle-btn:hover:not(.active){background:var(--blue-light)}\n.timeline{margin:12px 0}\n.timeline-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:11px}\n.timeline-row .yr{width:60px;color:var(--gray);font-weight:600;text-align:right}\n.timeline-row .bar-wrap{flex:1;height:20px;background:var(--border);border-radius:3px;overflow:hidden;position:relative}\n.timeline-row .bar-fill{height:100%;border-radius:3px;display:flex;align-items:center;justify-content:flex-end;padding-right:6px;font-size:10px;font-weight:700;color:#fff;transition:width .4s ease}\n.timeline-row .bar-fill.pos{background:var(--green)}\n.timeline-row .bar-fill.neg{background:var(--red)}\n.timeline-row .val{width:80px;font-weight:700;font-size:11px;color:var(--text)}\n.timeline-row .val.pos{color:var(--green-dark)}\n.timeline-row .val.neg{color:var(--red)}\n.auto-phase{background:var(--blue-light);border-radius:8px;padding:14px 16px;margin:8px 0}\n.auto-phase .phase-label{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px}\n.auto-phase .phase-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:13px}\n.auto-phase .phase-val{font-weight:700;color:var(--blue)}\n.auto-phase .info-text{font-size:11px;color:var(--gray);margin-top:8px;line-height:1.4}\n.auto-phase input[type=range]{margin:8px 0 4px}\n.phase-compare{background:var(--blue-light);border-radius:8px;padding:12px 16px;margin:12px 0}\n.phase-compare .pc-row{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}\n.phase-compare .pc-label{color:var(--gray)}\n.phase-compare .pc-val{font-weight:700}\n.phase-compare .pc-val.p1{color:var(--orange)}\n.phase-compare .pc-val.p2{color:var(--green-dark)}\n.phase-compare .pc-val.p3{color:var(--green)}\n.benefits{margin-top:16px}\n.benefits h4{font-size:13px;font-weight:700;color:var(--blue);margin-bottom:8px}\n.benefit-item{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;font-size:12px;color:var(--gray);line-height:1.4}\n.benefit-item .ck{color:var(--green);font-size:14px;flex-shrink:0;margin-top:1px}\n.compare{margin-bottom:10px}\n.compare h4{font-size:12px;font-weight:600;margin-bottom:8px;color:var(--text)}\n.bar-container{margin-bottom:10px}\n.bar-label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:3px}\n.bar-label .name{color:var(--gray)}\n.bar-label .val{font-weight:700;color:var(--text)}\n.bar{height:7px;background:var(--border);border-radius:4px;overflow:hidden}\n.bar .fill{height:100%;border-radius:4px;transition:width .5s ease}\n.bar .fill.manual{background:var(--red)}\n.bar .fill.cwo{background:var(--green)}\n.cta-area{text-align:center;padding:24px}\n.btn{display:inline-block;padding:14px 36px;background:var(--green);color:#fff;text-decoration:none;border-radius:4px;font-weight:600;font-size:15px;font-family:inherit;border:none;cursor:pointer;transition:background .2s}\n.btn:hover{background:var(--green-dark)}\n.btn-blue{background:var(--blue)}.btn-blue:hover{background:var(--blue-dark)}\n.cta-hint{font-size:12px;color:var(--gray);margin-top:8px;line-height:1.5}\n.product-desc{text-align:center;max-width:720px;margin:0 auto 24px;font-size:13px;color:var(--gray);line-height:1.5;padding:0 16px}\n.threshold{background:var(--blue-light);border-radius:8px;padding:12px 16px;margin-bottom:14px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--blue)}\n.threshold .ico{font-size:18px;flex-shrink:0}\n.threshold.warn{background:#fff3cd;color:#856404}\n.threshold.good{background:#d4edda;color:#155724}\n.timeline-note{font-size:10px;color:var(--gray);margin-top:6px}\n.ampel-presets{display:flex;gap:0;margin:0 0 14px;border-radius:6px;overflow:hidden;border:1px solid var(--border)}\n.ampel-preset-btn{flex:1;padding:10px 6px;border:none;background:var(--white);color:var(--gray);font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;text-align:center;border-right:1px solid var(--border)}\n.ampel-preset-btn:last-child{border-right:none}\n.ampel-preset-btn.active{background:var(--blue);color:#fff}\n.ampel-preset-btn:hover:not(.active){background:var(--blue-light)}\n.ampel-bar-vis{display:flex;height:18px;border-radius:4px;overflow:hidden;margin:8px 0 2px;border:1px solid var(--border)}\n.ampel-bar-vis .seg{display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;transition:width .3s ease;overflow:hidden;white-space:nowrap}\n.ampel-bar-vis .seg.g{background:#dce8f5;color:var(--blue)}\n.ampel-bar-vis .seg.y{background:#7aaad4;color:#fff}\n.ampel-bar-vis .seg.r{background:var(--blue);color:#fff}\n.ampel-summary .ampel-bar-vis{height:24px;margin:6px 0 0;border-radius:6px}\n.ampel-summary .ampel-bar-vis .seg{font-size:10px}\n.ampel-toggle{display:block;text-align:center;font-size:11px;color:var(--blue);cursor:pointer;padding:4px 0 0;opacity:.7}\n.ampel-toggle:hover{opacity:1;text-decoration:underline}\n.ampel-details{display:none;margin-top:8px}\n.ampel-details.open{display:block}\n.ampel-legend{display:flex;gap:10px;font-size:10px;color:var(--gray);margin-bottom:12px;flex-wrap:wrap}\n.ampel-legend span{display:flex;align-items:center;gap:3px}\n.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}\n.ampel-row .a-icon .dot{width:10px;height:10px}\n.ampel-linked{background:var(--blue-light);border-radius:8px;padding:14px 16px;margin:8px 0}\n.ampel-linked .al-title{font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px}\n.ampel-row{display:flex;align-items:center;gap:8px;margin:6px 0}\n.ampel-row .a-icon{font-size:16px;flex-shrink:0;width:22px;text-align:center}\n.ampel-row .a-lbl{font-size:11px;color:var(--text);min-width:90px}\n.ampel-row input[type=range]{flex:1;height:5px;margin:0}\n.ampel-row input.sl-green{accent-color:#a0bfe0}\n.ampel-row input.sl-yellow{accent-color:#7aaad4}\n.ampel-row input.sl-red{accent-color:var(--blue)}\n.ampel-row .a-pct{font-size:14px;font-weight:700;color:var(--blue);min-width:38px;text-align:right}\n.phase-compact{background:var(--blue-light);border-radius:8px;padding:10px 16px;margin:6px 0}\n.phase-compact .pch{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:0.5px}\n.phase-compact input[type=range]{width:100%;margin:6px 0 2px;accent-color:var(--green);height:5px}\n.phase-compact .mini-ampel{display:flex;height:12px;border-radius:3px;overflow:hidden;margin-top:4px}\n.phase-compact .mini-ampel .seg{transition:width .3s ease;min-width:0}\n.phase-compact .mini-ampel .seg.g{background:var(--green)}\n.phase-compact .mini-ampel .seg.y{background:var(--orange)}\n.phase-compact .mini-ampel .seg.r{background:var(--red)}\n.phase-compact .mini-labels{display:flex;gap:8px;font-size:9px;color:var(--gray);margin-top:3px}\n@media(max-width:768px){\n  .calc-grid{grid-template-columns:1fr}\n  .product-tabs{flex-wrap:wrap}\n  .ptab{padding:12px 16px;font-size:13px}\n}\n<\/style>\n\n\n\n\n<div class=\"cwo-calc-scope\">\n\n<nav class=\"product-tabs\">\n  <button class=\"ptab active\" onclick=\"switchProduct('auftraege',this)\">Order CWO<\/button>\n <button class=\"ptab\" onclick=\"switchProduct('service',this)\">Service CWO<\/button>\n <button class=\"ptab\" onclick=\"switchProduct('lieferschein',this)\">Delivery Note CWO<\/button>\n<\/nav>\n\n<!-- ========== AUFTRAGSVERARBEITUNGS-CWO ========== -->\n<div id=\"calc-auftraege\" class=\"calc-section active\">\n  <p class=\"product-desc\">Automatic processing of incoming customer orders via email \u2014 from reading and data extraction to booking in the ERP system.<\/p>\n  <div class=\"calc-grid\">\n    <div class=\"input-panel\">\n      <h3><span class=\"ico\">\ud83d\udccb<\/span> Your details<\/h3>\n      <div id=\"threshold-a\" class=\"threshold good\"><span class=\"ico\">\u2705<\/span><span>CWO is particularly worthwhile from 15 orders\/day.<\/span><\/div>\n\n      <div class=\"field\">\n        <label>Orders via email per day<\/label>\n        <div class=\"value-display\"><span id=\"val-a-orders\">50<\/span> <span class=\"value-unit\">orders\/day<\/span><\/div>\n        <input type=\"range\" id=\"a-orders\" min=\"10\" max=\"500\" value=\"50\" oninput=\"calcAuftraege()\">\n        <div class=\"range-labels\"><span>10<\/span><span>250<\/span><span>500<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Average minutes per order (manual processing)<\/label>\n        <div class=\"hint\">Read order, type in data, book into system<\/div>\n        <div class=\"value-display\"><span id=\"val-a-minutes\">8<\/span> <span class=\"value-unit\">minutes<\/span><\/div>\n        <input type=\"range\" id=\"a-minutes\" min=\"3\" max=\"20\" value=\"8\" oninput=\"calcAuftraege()\">\n        <div class=\"range-labels\"><span>3 min<\/span><span>10 min<\/span><span>20 min<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Hourly wage (gross incl. non-wage labor costs)<\/label>\n        <div class=\"value-display\"><span id=\"val-a-wage\">35<\/span> <span class=\"value-unit\">\u20ac\/hour<\/span><\/div>\n        <input type=\"range\" id=\"a-wage\" min=\"20\" max=\"60\" value=\"35\" oninput=\"calcAuftraege()\">\n        <div class=\"range-labels\"><span>20 \u20ac<\/span><span>40 \u20ac<\/span><span>60 \u20ac<\/span><\/div>\n      <\/div>\n\n      <div class=\"section-label toggle\" onclick=\"toggleSection('a-hidden')\"><span class=\"ico\">\ud83d\udc65<\/span> Hidden costs (manual process)<span class=\"arrow\">\u25be<\/span><\/div>\n      <div class=\"collapsible\" id=\"a-hidden\">\n      <div class=\"field\">\n        <label>Staff turnover per year<\/label>\n        <div class=\"hint\">New employees, substitutes, department changes \u2014 incl. ~16h onboarding per person <\/div>\n        <div class=\"value-display\"><span id=\"val-a-turnover\">2<\/span> <span class=\"value-unit\">per year<\/span><\/div>\n        <input type=\"range\" id=\"a-turnover\" min=\"0\" max=\"6\" value=\"2\" oninput=\"calcAuftraege()\">\n        <div class=\"range-labels\"><span>0<\/span><span>3<\/span><span>6<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Hours\/week for error correction &amp; queries<\/label>\n        <div class=\"hint\">Incorrect bookings, customer queries, correction loops<\/div>\n        <div class=\"value-display\"><span id=\"val-a-errors\">2<\/span> <span class=\"value-unit\">hrs\/week<\/span><\/div>\n        <input type=\"range\" id=\"a-errors\" min=\"0\" max=\"10\" value=\"2\" oninput=\"calcAuftraege()\">\n        <div class=\"range-labels\"><span>0<\/span><span>5<\/span><span>10<\/span><\/div>\n      <\/div>\n      <\/div>\n\n      <div class=\"section-label toggle\" onclick=\"toggleSection('a-invest')\"><span class=\"ico\">\u2699\ufe0f<\/span> Investment costs<span class=\"arrow\">\u25be<\/span><\/div>\n      <div class=\"collapsible\" id=\"a-invest\">\n      <div class=\"field\">\n        <label>One-off project costs (from <span id=\"a-cost-default\">10,000<\/span> \u20ac)<\/label>\n        <input type=\"number\" id=\"a-project-cost\" value=\"10000\" min=\"0\" oninput=\"calcAuftraege()\">\n      <\/div>\n\n      <div class=\"field\">\n        <label>Additional costs for optimization phase (optional)<\/label>\n        <div class=\"hint\">In case adjustments are required during optimization<\/div>\n        <input type=\"number\" id=\"a-optimization-cost\" value=\"0\" min=\"0\" oninput=\"calcAuftraege()\">\n      <\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcc8<\/span> Degree of automation<\/div>\n\n      <div class=\"ampel-presets\" id=\"a-presets\">\n        <button class=\"ampel-preset-btn\" onclick=\"setPreset('a','konservativ',this)\">Conservative<\/button>\n <button class=\"ampel-preset-btn active\" onclick=\"setPreset('a','realistisch',this)\">Realistic<\/button>\n <button class=\"ampel-preset-btn\" onclick=\"setPreset('a','optimistisch',this)\">Optimistic<\/button>\n      <\/div>\n\n      <div class=\"ampel-summary\" id=\"a-ampel-summary\"><\/div>\n      <div class=\"ampel-legend\">\n         <span><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span> Fully automatic<\/span>\n <span><span class=\"dot\" style=\"background:#7aaad4\"><\/span> Rework required<\/span>\n <span><span class=\"dot\" style=\"background:var(--blue)\"><\/span> Completely manual<\/span>\n      <\/div>\n      <a class=\"ampel-toggle\" onclick=\"toggleAmpel('a')\" id=\"a-ampel-toggle\">Adjust details \u25be<\/a>\n\n      <div class=\"ampel-details\" id=\"a-ampel-details\">\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 1 (upcoming optimization)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"a-p1-green\" min=\"0\" max=\"100\" value=\"25\" oninput=\"linkedSlider('a',1,'green')\"><span class=\"a-pct\" id=\"a-p1-green-pct\">25%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"a-p1-yellow\" min=\"0\" max=\"100\" value=\"68\" oninput=\"linkedSlider('a',1,'yellow')\"><span class=\"a-pct\" id=\"a-p1-yellow-pct\">68%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"a-p1-red\" min=\"0\" max=\"100\" value=\"7\" oninput=\"linkedSlider('a',1,'red')\"><span class=\"a-pct\" id=\"a-p1-red-pct\">7%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"a-p1-bar\"><\/div>\n      <\/div>\n\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 2+ (Optimized)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"a-p2-green\" min=\"0\" max=\"100\" value=\"80\" oninput=\"linkedSlider('a',2,'green')\"><span class=\"a-pct\" id=\"a-p2-green-pct\">80%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"a-p2-yellow\" min=\"0\" max=\"100\" value=\"18\" oninput=\"linkedSlider('a',2,'yellow')\"><span class=\"a-pct\" id=\"a-p2-yellow-pct\">18%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"a-p2-red\" min=\"0\" max=\"100\" value=\"2\" oninput=\"linkedSlider('a',2,'red')\"><span class=\"a-pct\" id=\"a-p2-red-pct\">2%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"a-p2-bar\"><\/div>\n      <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"result-panel\">\n      <h3>Your savings<\/h3>\n\n      <div style=\"margin-top:8px\">\n        <div class=\"cost-row\"><span class=\"label\">Manual processing costs<\/span><span class=\"amount\" id=\"a-cost-manual\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Onboarding &amp; error correction<\/span><span class=\"amount\" id=\"a-cost-hidden\">\u2013<\/span><\/div>\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Total manual costs \/ month<\/span><span class=\"amount\" id=\"a-cost-manual-total\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row\"><span class=\"label\">CWO basic fee \/ month<\/span><span class=\"amount\">499 \u20ac<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Usage costs (~1 \u20ac\/order)<\/span><span class=\"amount\" id=\"a-cost-usage\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Fully automatic (5%)<\/span><span class=\"amount\" id=\"a-cost-p-green\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Rework (30%)<\/span><span class=\"amount\" id=\"a-cost-p-yellow\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Manual (100%)<\/span><span class=\"amount\" id=\"a-cost-p-red\">\u2013<\/span><\/div>\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Total CWO costs \/ month<\/span><span class=\"amount\" id=\"a-cost-cwo\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row total\"><span class=\"label\">Monthly savings (Optimized)<\/span><span class=\"amount\" id=\"a-savings\">\u2013<\/span><\/div>\n      <\/div>\n\n      <div class=\"phase-compare\">\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 1 (upcoming optimization):<\/span>\n <span class=\"pc-val p1\" id=\"a-phase1-savings\">\u2013<\/span>\n        <\/div>\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 2+ (Optimized):<\/span>\n <span class=\"pc-val p2\" id=\"a-phase2-savings\">\u2013<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"savings-box\">\n        <div class=\"big\"><span class=\"green\" id=\"a-savings-pct\">\u2013<\/span>%<\/div>\n        <div class=\"desc\">lower costs in order processing (from year 2)<\/div>\n        <div class=\"fte\" id=\"a-fte\">\u2259 <strong>\u2013<\/strong> full-time equivalents (FTE) saved<\/div>\n        <div class=\"roi\" id=\"a-roi\">Investment pays off in approx. \u2013 months<\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcca<\/span> Depreciation of one-off costs<\/div>\n\n      <div class=\"depr-toggle\" id=\"a-depr-toggle\">\n        <button class=\"depr-btn active\" onclick=\"setDepr('a',1,this)\">1 year<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('a',3,this)\">3 years<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('a',5,this)\">5 years<\/button>\n      <\/div>\n\n      <div class=\"timeline-toggle\" id=\"a-timeline-toggle\">\n        <button class=\"timeline-toggle-btn active\" onclick=\"setTimelineMode('a','kumuliert',this)\">Cumulative<\/button>\n <button class=\"timeline-toggle-btn\" onclick=\"setTimelineMode('a','proYear',this)\">Per year<\/button>\n      <\/div>\n\n      <div id=\"a-timeline\" class=\"timeline\"><\/div>\n\n      <div class=\"benefits\">\n        <h4>Additional benefits<\/h4>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> 10 orders in 2 minutes in the system \u2014 CWO processes in parallel, employees work sequentially<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Consequential errors due to manual entry eliminated<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> New employees do not need onboarding \u2014 CWO knows the process<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> CWO works 21 days\/month \u2014 no vacation, no illness, no onboarding<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> During the project, you learn to use your data cleanly \u2014 we show you how and clean up the causes together<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"cta-area\">\n    <p class=\"cta-hint\">Basic fee 249\u2013499 \u20ac depending on complexity \u00b7 One-off costs must be calculated individually \u2014 assumptions only \u00b7 Non-binding<\/p>\n  <\/div>\n<\/div>\n\n<!-- ========== LIEFERSCHEIN-CWO ========== -->\n<div id=\"calc-lieferschein\" class=\"calc-section\">\n  <p class=\"product-desc\">Automatic comparison of incoming delivery notes with orders \u2014 detection, verification, and booking in the system.<\/p>\n  <div class=\"calc-grid\">\n    <div class=\"input-panel\">\n      <h3><span class=\"ico\">\ud83d\udce6<\/span> Your details<\/h3>\n      <div id=\"threshold-l\" class=\"threshold good\"><span class=\"ico\">\u2705<\/span><span>CWO is particularly worthwhile from 20 delivery notes\/day.<\/span><\/div>\n\n      <div class=\"field\">\n        <label>Delivery notes per day<\/label>\n        <div class=\"value-display\"><span id=\"val-l-docs\">40<\/span> <span class=\"value-unit\">delivery notes\/day<\/span><\/div>\n        <input type=\"range\" id=\"l-docs\" min=\"5\" max=\"200\" value=\"40\" oninput=\"calcLieferschein()\">\n        <div class=\"range-labels\"><span>5<\/span><span>100<\/span><span>200<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Average minutes per delivery note (manual check)<\/label>\n        <div class=\"hint\">Read delivery note, compare with order, clarify discrepancies, book in system<\/div>\n        <div class=\"value-display\"><span id=\"val-l-minutes\">5<\/span> <span class=\"value-unit\">minutes<\/span><\/div>\n        <input type=\"range\" id=\"l-minutes\" min=\"2\" max=\"15\" value=\"5\" oninput=\"calcLieferschein()\">\n        <div class=\"range-labels\"><span>2 min<\/span><span>8 min<\/span><span>15 min<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Hourly wage (gross incl. non-wage labor costs)<\/label>\n        <div class=\"value-display\"><span id=\"val-l-wage\">32<\/span> <span class=\"value-unit\">\u20ac\/hour<\/span><\/div>\n        <input type=\"range\" id=\"l-wage\" min=\"20\" max=\"60\" value=\"32\" oninput=\"calcLieferschein()\">\n        <div class=\"range-labels\"><span>20 \u20ac<\/span><span>40 \u20ac<\/span><span>60 \u20ac<\/span><\/div>\n      <\/div>\n\n      <div class=\"section-label toggle\" onclick=\"toggleSection('l-invest')\"><span class=\"ico\">\u2699\ufe0f<\/span> Investment costs<span class=\"arrow\">\u25be<\/span><\/div>\n      <div class=\"collapsible\" id=\"l-invest\">\n      <div class=\"field\">\n        <label>One-off project costs (from <span id=\"l-cost-default\">7,500<\/span> \u20ac)<\/label>\n        <input type=\"number\" id=\"l-project-cost\" value=\"7500\" min=\"0\" oninput=\"calcLieferschein()\">\n      <\/div>\n\n      <div class=\"field\">\n        <label>Additional costs for optimization phase (optional)<\/label>\n        <div class=\"hint\">In case adjustments are required during optimization<\/div>\n        <input type=\"number\" id=\"l-optimization-cost\" value=\"0\" min=\"0\" oninput=\"calcLieferschein()\">\n      <\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcc8<\/span> Degree of automation<\/div>\n\n      <div class=\"ampel-presets\" id=\"l-presets\">\n        <button class=\"ampel-preset-btn\" onclick=\"setPreset('l','konservativ',this)\">Conservative<\/button>\n <button class=\"ampel-preset-btn active\" onclick=\"setPreset('l','realistisch',this)\">Realistic<\/button>\n <button class=\"ampel-preset-btn\" onclick=\"setPreset('l','optimistisch',this)\">Optimistic<\/button>\n      <\/div>\n\n      <div class=\"ampel-summary\" id=\"l-ampel-summary\"><\/div>\n      <div class=\"ampel-legend\">\n         <span><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span> Fully automatic<\/span>\n <span><span class=\"dot\" style=\"background:#7aaad4\"><\/span> Rework required<\/span>\n <span><span class=\"dot\" style=\"background:var(--blue)\"><\/span> Completely manual<\/span>\n      <\/div>\n      <a class=\"ampel-toggle\" onclick=\"toggleAmpel('l')\" id=\"l-ampel-toggle\">Adjust details \u25be<\/a>\n\n      <div class=\"ampel-details\" id=\"l-ampel-details\">\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 1 (upcoming optimization)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"l-p1-green\" min=\"0\" max=\"100\" value=\"25\" oninput=\"linkedSlider('l',1,'green')\"><span class=\"a-pct\" id=\"l-p1-green-pct\">25%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"l-p1-yellow\" min=\"0\" max=\"100\" value=\"68\" oninput=\"linkedSlider('l',1,'yellow')\"><span class=\"a-pct\" id=\"l-p1-yellow-pct\">68%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"l-p1-red\" min=\"0\" max=\"100\" value=\"7\" oninput=\"linkedSlider('l',1,'red')\"><span class=\"a-pct\" id=\"l-p1-red-pct\">7%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"l-p1-bar\"><\/div>\n      <\/div>\n\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 2+ (Optimized)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"l-p2-green\" min=\"0\" max=\"100\" value=\"80\" oninput=\"linkedSlider('l',2,'green')\"><span class=\"a-pct\" id=\"l-p2-green-pct\">80%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"l-p2-yellow\" min=\"0\" max=\"100\" value=\"18\" oninput=\"linkedSlider('l',2,'yellow')\"><span class=\"a-pct\" id=\"l-p2-yellow-pct\">18%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"l-p2-red\" min=\"0\" max=\"100\" value=\"2\" oninput=\"linkedSlider('l',2,'red')\"><span class=\"a-pct\" id=\"l-p2-red-pct\">2%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"l-p2-bar\"><\/div>\n      <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"result-panel\">\n      <h3>Your savings<\/h3>\n\n      <div style=\"margin-top:8px\">\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Manual processing costs \/ month<\/span><span class=\"amount\" id=\"l-cost-manual\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row\"><span class=\"label\">CWO basic fee \/ month<\/span><span class=\"amount\">249 \u20ac<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Usage costs (~0.50 \u20ac\/delivery note)<\/span><span class=\"amount\" id=\"l-cost-usage\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Fully automatic (5%)<\/span><span class=\"amount\" id=\"l-cost-p-green\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Rework (25%)<\/span><span class=\"amount\" id=\"l-cost-p-yellow\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Manual (100%)<\/span><span class=\"amount\" id=\"l-cost-p-red\">\u2013<\/span><\/div>\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Total CWO costs \/ month<\/span><span class=\"amount\" id=\"l-cost-cwo\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row total\"><span class=\"label\">Monthly savings (Optimized)<\/span><span class=\"amount\" id=\"l-savings\">\u2013<\/span><\/div>\n      <\/div>\n\n      <div class=\"phase-compare\">\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 1 (upcoming optimization):<\/span>\n <span class=\"pc-val p1\" id=\"l-phase1-savings\">\u2013<\/span>\n        <\/div>\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 2+ (Optimized):<\/span>\n <span class=\"pc-val p2\" id=\"l-phase2-savings\">\u2013<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"savings-box\">\n        <div class=\"big\"><span class=\"green\" id=\"l-savings-pct\">\u2013<\/span>%<\/div>\n        <div class=\"desc\">lower costs in delivery note processing (from year 2)<\/div>\n        <div class=\"fte\" id=\"l-fte\">\u2259 <strong>\u2013<\/strong> full-time equivalents (FTE) saved<\/div>\n        <div class=\"roi\" id=\"l-roi\">Investment pays off in approx. \u2013 months<\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcca<\/span> Depreciation of one-off costs<\/div>\n\n      <div class=\"depr-toggle\" id=\"l-depr-toggle\">\n        <button class=\"depr-btn active\" onclick=\"setDepr('l',1,this)\">1 year<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('l',3,this)\">3 years<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('l',5,this)\">5 years<\/button>\n      <\/div>\n\n      <div class=\"timeline-toggle\" id=\"l-timeline-toggle\">\n        <button class=\"timeline-toggle-btn active\" onclick=\"setTimelineMode('l','kumuliert',this)\">Cumulative<\/button>\n <button class=\"timeline-toggle-btn\" onclick=\"setTimelineMode('l','proYear',this)\">Per year<\/button>\n      <\/div>\n\n      <div id=\"l-timeline\" class=\"timeline\"><\/div>\n\n      <div class=\"benefits\">\n        <h4>Additional benefits<\/h4>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Automatic comparison: Delivery note \u2194 Order \u2014 discrepancies immediately visible<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> No lost delivery notes \u2014 everything immediately in the system<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> New employees do not need onboarding \u2014 CWO knows the process<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Better negotiating position with suppliers through complete documentation<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"cta-area\">\n    <a href=\"#\" class=\"btn btn-blue\">Request individual offer<\/a>\n    <p class=\"cta-hint\">Basic fee 249\u2013499 \u20ac depending on complexity \u00b7 One-off costs must be calculated individually \u2014 assumptions only \u00b7 Non-binding<\/p>\n  <\/div>\n<\/div>\n\n<!-- ========== SERVICE-CWO ========== -->\n<div id=\"calc-service\" class=\"calc-section\">\n  <p class=\"product-desc\">Automatic recording and assignment of technical service reports \u2014 incl. machine identification, spare part assignment, and forwarding to the system. <\/p>\n  <div class=\"calc-grid\">\n    <div class=\"input-panel\">\n      <h3><span class=\"ico\">\ud83d\udd27<\/span> Your details<\/h3>\n      <div id=\"threshold-s\" class=\"threshold good\"><span class=\"ico\">\u2705<\/span><span>CWO is particularly worthwhile from 10 service reports\/day.<\/span><\/div>\n\n      <div class=\"field\">\n        <label>Service reports per day<\/label>\n        <div class=\"value-display\"><span id=\"val-s-sheets\">10<\/span> <span class=\"value-unit\">reports\/day<\/span><\/div>\n        <input type=\"range\" id=\"s-sheets\" min=\"1\" max=\"50\" value=\"10\" oninput=\"calcService()\">\n        <div class=\"range-labels\"><span>1<\/span><span>25<\/span><span>50<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Average minutes per service report (manual recording)<\/label>\n        <div class=\"hint\">Read report, look up machine &amp; spare parts, clarify queries, book in system<\/div>\n        <div class=\"value-display\"><span id=\"val-s-minutes\">15<\/span> <span class=\"value-unit\">minutes<\/span><\/div>\n        <input type=\"range\" id=\"s-minutes\" min=\"5\" max=\"30\" value=\"15\" oninput=\"calcService()\">\n        <div class=\"range-labels\"><span>5 min<\/span><span>15 min<\/span><span>30 min<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Hourly wage (gross incl. non-wage labor costs)<\/label>\n        <div class=\"value-display\"><span id=\"val-s-wage\">32<\/span> <span class=\"value-unit\">\u20ac\/hour<\/span><\/div>\n        <input type=\"range\" id=\"s-wage\" min=\"20\" max=\"60\" value=\"32\" oninput=\"calcService()\">\n        <div class=\"range-labels\"><span>20 \u20ac<\/span><span>40 \u20ac<\/span><span>60 \u20ac<\/span><\/div>\n      <\/div>\n\n      <div class=\"section-label toggle\" onclick=\"toggleSection('s-hidden')\"><span class=\"ico\">\ud83d\udc65<\/span> Hidden costs (manual process)<span class=\"arrow\">\u25be<\/span><\/div>\n      <div class=\"collapsible\" id=\"s-hidden\">\n      <div class=\"field\">\n        <label>Material costs per year due to incorrect spare parts\/details<\/label>\n        <div class=\"hint\">Wrong spare parts ordered, unnecessary travel, returns<\/div>\n        <div class=\"value-display\"><span id=\"val-s-matcost\">5,000<\/span> <span class=\"value-unit\">\u20ac\/year<\/span><\/div>\n        <input type=\"range\" id=\"s-matcost\" min=\"0\" max=\"20000\" value=\"5000\" step=\"500\" oninput=\"calcService()\">\n        <div class=\"range-labels\"><span>0 \u20ac<\/span><span>10,000 \u20ac<\/span><span>20,000 \u20ac<\/span><\/div>\n      <\/div>\n\n      <div class=\"field\">\n        <label>Hours\/week for queries &amp; corrections<\/label>\n        <div class=\"hint\">Clarify missing info, correction loops with technicians<\/div>\n        <div class=\"value-display\"><span id=\"val-s-errors\">2<\/span> <span class=\"value-unit\">hrs\/week<\/span><\/div>\n        <input type=\"range\" id=\"s-errors\" min=\"0\" max=\"10\" value=\"2\" oninput=\"calcService()\">\n        <div class=\"range-labels\"><span>0<\/span><span>5<\/span><span>10<\/span><\/div>\n      <\/div>\n      <\/div>\n\n      <div class=\"section-label toggle\" onclick=\"toggleSection('s-invest')\"><span class=\"ico\">\u2699\ufe0f<\/span> Investment costs<span class=\"arrow\">\u25be<\/span><\/div>\n      <div class=\"collapsible\" id=\"s-invest\">\n      <div class=\"field\">\n        <label>One-off project costs (from <span id=\"s-cost-default\">8,000<\/span> \u20ac)<\/label>\n        <input type=\"number\" id=\"s-project-cost\" value=\"8000\" min=\"0\" oninput=\"calcService()\">\n      <\/div>\n\n      <div class=\"field\">\n        <label>Additional costs for optimization phase (optional)<\/label>\n        <div class=\"hint\">In case adjustments are required during optimization<\/div>\n        <input type=\"number\" id=\"s-optimization-cost\" value=\"0\" min=\"0\" oninput=\"calcService()\">\n      <\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcc8<\/span> Degree of automation<\/div>\n\n      <div class=\"ampel-presets\" id=\"s-presets\">\n        <button class=\"ampel-preset-btn\" onclick=\"setPreset('s','konservativ',this)\">Conservative<\/button>\n <button class=\"ampel-preset-btn active\" onclick=\"setPreset('s','realistisch',this)\">Realistic<\/button>\n <button class=\"ampel-preset-btn\" onclick=\"setPreset('s','optimistisch',this)\">Optimistic<\/button>\n      <\/div>\n\n      <div class=\"ampel-summary\" id=\"s-ampel-summary\"><\/div>\n      <div class=\"ampel-legend\">\n         <span><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span> Fully automatic<\/span>\n <span><span class=\"dot\" style=\"background:#7aaad4\"><\/span> Rework required<\/span>\n <span><span class=\"dot\" style=\"background:var(--blue)\"><\/span> Completely manual<\/span>\n      <\/div>\n      <a class=\"ampel-toggle\" onclick=\"toggleAmpel('s')\" id=\"s-ampel-toggle\">Adjust details \u25be<\/a>\n\n      <div class=\"ampel-details\" id=\"s-ampel-details\">\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 1 (upcoming optimization)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"s-p1-green\" min=\"0\" max=\"100\" value=\"25\" oninput=\"linkedSlider('s',1,'green')\"><span class=\"a-pct\" id=\"s-p1-green-pct\">25%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"s-p1-yellow\" min=\"0\" max=\"100\" value=\"68\" oninput=\"linkedSlider('s',1,'yellow')\"><span class=\"a-pct\" id=\"s-p1-yellow-pct\">68%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"s-p1-red\" min=\"0\" max=\"100\" value=\"7\" oninput=\"linkedSlider('s',1,'red')\"><span class=\"a-pct\" id=\"s-p1-red-pct\">7%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"s-p1-bar\"><\/div>\n      <\/div>\n\n      <div class=\"ampel-linked\">\n        <div class=\"al-title\">Year 2+ (Optimized)<\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#dce8f5;border:1px solid #b0c8e8\"><\/span><\/span><span class=\"a-lbl\">Fully automatic<\/span><input type=\"range\" class=\"sl-green\" id=\"s-p2-green\" min=\"0\" max=\"100\" value=\"80\" oninput=\"linkedSlider('s',2,'green')\"><span class=\"a-pct\" id=\"s-p2-green-pct\">80%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:#7aaad4\"><\/span><\/span><span class=\"a-lbl\">Rework required<\/span><input type=\"range\" class=\"sl-yellow\" id=\"s-p2-yellow\" min=\"0\" max=\"100\" value=\"18\" oninput=\"linkedSlider('s',2,'yellow')\"><span class=\"a-pct\" id=\"s-p2-yellow-pct\">18%<\/span><\/div>\n        <div class=\"ampel-row\"><span class=\"a-icon\"><span class=\"dot\" style=\"background:var(--blue)\"><\/span><\/span><span class=\"a-lbl\">Completely manual<\/span><input type=\"range\" class=\"sl-red\" id=\"s-p2-red\" min=\"0\" max=\"100\" value=\"2\" oninput=\"linkedSlider('s',2,'red')\"><span class=\"a-pct\" id=\"s-p2-red-pct\">2%<\/span><\/div>\n        <div class=\"ampel-bar-vis\" id=\"s-p2-bar\"><\/div>\n      <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"result-panel\">\n      <h3>Your savings<\/h3>\n\n      <div style=\"margin-top:8px\">\n        <div class=\"cost-row\"><span class=\"label\">Manual processing costs<\/span><span class=\"amount\" id=\"s-cost-manual\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Material costs &amp; queries\/corrections<\/span><span class=\"amount\" id=\"s-cost-hidden\">\u2013<\/span><\/div>\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Total manual costs \/ month<\/span><span class=\"amount\" id=\"s-cost-manual-total\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row\"><span class=\"label\">CWO basic fee \/ month<\/span><span class=\"amount\">249 \u20ac<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Usage (0.50 \u20ac\/report)<\/span><span class=\"amount\" id=\"s-cost-usage\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Fully automatic (0%)<\/span><span class=\"amount\" id=\"s-cost-p-green\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Rework (20%)<\/span><span class=\"amount\" id=\"s-cost-p-yellow\">\u2013<\/span><\/div>\n        <div class=\"cost-row sub\"><span class=\"label\">+ Personnel: Manual (100%)<\/span><span class=\"amount\" id=\"s-cost-p-red\">\u2013<\/span><\/div>\n        <div class=\"cost-row\" style=\"font-weight:600\"><span class=\"label\">Total CWO costs \/ month<\/span><span class=\"amount\" id=\"s-cost-cwo\">\u2013<\/span><\/div>\n\n        <div class=\"cost-row total\"><span class=\"label\">Monthly savings (Optimized)<\/span><span class=\"amount\" id=\"s-savings\">\u2013<\/span><\/div>\n      <\/div>\n\n      <div class=\"phase-compare\">\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 1 (upcoming optimization):<\/span>\n <span class=\"pc-val p1\" id=\"s-phase1-savings\">\u2013<\/span>\n        <\/div>\n        <div class=\"pc-row\">\n          <span class=\"pc-label\">Year 2+ (Optimized):<\/span>\n <span class=\"pc-val p2\" id=\"s-phase2-savings\">\u2013<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"savings-box\">\n        <div class=\"big\"><span class=\"green\" id=\"s-savings-pct\">\u2013<\/span>%<\/div>\n        <div class=\"desc\">lower costs for service reports (from year 2)<\/div>\n        <div class=\"fte\" id=\"s-fte\">\u2259 <strong>\u2013<\/strong> full-time equivalents (FTE) saved<\/div>\n        <div class=\"roi\" id=\"s-roi\">Investment pays off in approx. \u2013 months<\/div>\n      <\/div>\n\n      <div class=\"section-label\"><span class=\"ico\">\ud83d\udcca<\/span> Depreciation of one-off costs<\/div>\n\n      <div class=\"depr-toggle\" id=\"s-depr-toggle\">\n        <button class=\"depr-btn active\" onclick=\"setDepr('s',1,this)\">1 year<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('s',3,this)\">3 years<\/button>\n <button class=\"depr-btn\" onclick=\"setDepr('s',5,this)\">5 years<\/button>\n      <\/div>\n\n      <div class=\"timeline-toggle\" id=\"s-timeline-toggle\">\n        <button class=\"timeline-toggle-btn active\" onclick=\"setTimelineMode('s','kumuliert',this)\">Cumulative<\/button>\n <button class=\"timeline-toggle-btn\" onclick=\"setTimelineMode('s','proYear',this)\">Per year<\/button>\n      <\/div>\n\n      <div id=\"s-timeline\" class=\"timeline\"><\/div>\n\n      <div class=\"benefits\">\n        <h4>Additional benefits<\/h4>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Service reports immediately in the system \u2014 no manual re-entry<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Automatic assignment to customers, assets, and contracts<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> No transmission errors in report data<\/div>\n        <div class=\"benefit-item\"><span class=\"ck\">\u2713<\/span> Faster and better prioritization of urgent requests<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n\n<\/div>\n<\/div>\n<script>\nconst fmt=n=>new Intl.NumberFormat('de-DE',{minimumFractionDigits:0,maximumFractionDigits:0}).format(n);\nconst fmtDecimal=n=>new Intl.NumberFormat('de-DE',{minimumFractionDigits:1,maximumFractionDigits:1}).format(n);\nconst fmtE=n=>new Intl.NumberFormat('de-DE',{style:'currency',currency:'EUR',minimumFractionDigits:0,maximumFractionDigits:0}).format(n);\n\nconst presets={\n  konservativ:{p1g:15,p1y:68,p1r:17, p2g:50,p2y:40,p2r:10},\n  realistisch:{p1g:25,p1y:68,p1r:7, p2g:80,p2y:18,p2r:2},\n  optimistisch:{p1g:45,p1y:50,p1r:5, p2g:90,p2y:9,p2r:1}\n};\n\nconst PRODUCTIVE_H_DAY=6; \/\/ Produktive Arbeitsstunden pro Tag (realistisch)\nconst NET_DAYS_EMPLOYEE=17; \/\/ Netto-Arbeitstage\/Monat (abzgl. Urlaub, Krankheit, Fortbildung)\n\nconst state={\n  a:{deprYears:1,timelineMode:'kumuliert',p1g:25,p1y:68,p1r:7,p2g:80,p2y:18,p2r:2,setupCost:10000,activePreset:'realistisch'},\n  l:{deprYears:1,timelineMode:'kumuliert',p1g:25,p1y:68,p1r:7,p2g:80,p2y:18,p2r:2,setupCost:7500,activePreset:'realistisch'},\n  s:{deprYears:1,timelineMode:'kumuliert',p1g:25,p1y:68,p1r:7,p2g:80,p2y:18,p2r:2,setupCost:8000,activePreset:'realistisch'}\n};\n\nfunction switchProduct(id,el){\n  document.querySelectorAll('.calc-section').forEach(s=>s.classList.remove('active'));\n  document.querySelectorAll('.ptab').forEach(b=>b.classList.remove('active'));\n  document.getElementById('calc-'+id).classList.add('active');\n  el.classList.add('active');\n}\n\nfunction setDepr(prefix,years,el){\n  state[prefix].deprYears=years;\n  el.parentElement.querySelectorAll('.depr-btn').forEach(b=>b.classList.remove('active'));\n  el.classList.add('active');\n  updateCalc(prefix);\n}\n\nfunction setTimelineMode(prefix,mode,el){\n  state[prefix].timelineMode=mode;\n  el.parentElement.querySelectorAll('.timeline-toggle-btn').forEach(b=>b.classList.remove('active'));\n  el.classList.add('active');\n  updateCalc(prefix);\n}\n\nfunction updateCalc(prefix){\n  if(prefix==='a') calcAuftraege();\n  else if(prefix==='l') calcLieferschein();\n  else calcService();\n}\n\nfunction getPhaseBreakdown(prefix,phaseNum){\n  const s=state[prefix];\n  const pk='p'+phaseNum;\n  return {g:s[pk+'g']\/100,y:s[pk+'y']\/100,r:s[pk+'r']\/100};\n}\n\nfunction toggleSection(id){\n  const d=document.getElementById(id);\n  const label=d.previousElementSibling;\n  const arrow=label.querySelector('.arrow');\n  if(d.classList.contains('open')){\n    d.classList.remove('open');\n    if(arrow) arrow.textContent='\u25be';\n  }else{\n    d.classList.add('open');\n    if(arrow) arrow.textContent='\u25b4';\n  }\n}\n\nfunction setPreset(prefix,name,el){\n  const p=presets[name];\n  const s=state[prefix];\n  for(const phase of [1,2]){\n    const pk='p'+phase;\n    s[pk+'g']=p[pk+'g'];s[pk+'y']=p[pk+'y'];s[pk+'r']=p[pk+'r'];\n    document.getElementById(prefix+'-'+pk+'-green').value=p[pk+'g'];\n    document.getElementById(prefix+'-'+pk+'-yellow').value=p[pk+'y'];\n    document.getElementById(prefix+'-'+pk+'-red').value=p[pk+'r'];\n  }\n  s.activePreset=name;\n  el.parentElement.querySelectorAll('.ampel-preset-btn').forEach(b=>b.classList.remove('active'));\n  el.classList.add('active');\n  renderAmpelUI(prefix);\n  updateCalc(prefix);\n}\n\nfunction clearPresetActive(prefix){\n  document.querySelectorAll('#'+prefix+'-presets .ampel-preset-btn').forEach(b=>b.classList.remove('active'));\n  state[prefix].activePreset=null;\n}\n\nfunction linkedSlider(prefix,phase,changed){\n  const s=state[prefix];\n  const pk='p'+phase;\n  const gK=pk+'g',yK=pk+'y',rK=pk+'r';\n  let g=+document.getElementById(prefix+'-'+pk+'-green').value;\n  let y=+document.getElementById(prefix+'-'+pk+'-yellow').value;\n  let r=+document.getElementById(prefix+'-'+pk+'-red').value;\n  if(changed==='green'){\n    let remaining=100-g;\n    if(s[rK]<=remaining){r=s[rK];y=remaining-r;}\n    else{r=remaining;y=0;}\n  }else if(changed==='red'){\n    let remaining=100-r;\n    if(s[gK]<=remaining){g=s[gK];y=remaining-g;}\n    else{g=remaining;y=0;}\n  }else{\n    let remaining=100-y;\n    if(s[gK]<=remaining){g=s[gK];r=remaining-g;}\n    else{g=remaining;r=0;}\n  }\n  g=Math.max(0,Math.min(100,Math.round(g)));\n  y=Math.max(0,Math.min(100,Math.round(y)));\n  r=Math.max(0,Math.min(100,Math.round(r)));\n  if(g+y+r!==100){y=100-g-r;if(y<0){y=0;r=100-g;}}\n  s[gK]=g;s[yK]=y;s[rK]=r;\n  document.getElementById(prefix+'-'+pk+'-green').value=g;\n  document.getElementById(prefix+'-'+pk+'-yellow').value=y;\n  document.getElementById(prefix+'-'+pk+'-red').value=r;\n  clearPresetActive(prefix);\n  renderAmpelUI(prefix);\n  updateCalc(prefix);\n}\n\nfunction toggleAmpel(prefix){\n  const d=document.getElementById(prefix+'-ampel-details');\n  const t=document.getElementById(prefix+'-ampel-toggle');\n  if(d.classList.contains('open')){\n    d.classList.remove('open');\n    t.textContent='Details anpassen \u25be';\n  }else{\n    d.classList.add('open');\n    t.textContent='Zuklappen \u25b4';\n  }\n}\n\nfunction renderAmpelUI(prefix){\n  const s=state[prefix];\n  for(const phase of [1,2]){\n    const pk='p'+phase;\n    const g=s[pk+'g'],y=s[pk+'y'],r=s[pk+'r'];\n    document.getElementById(prefix+'-'+pk+'-green-pct').textContent=g+'%';\n    document.getElementById(prefix+'-'+pk+'-yellow-pct').textContent=y+'%';\n    document.getElementById(prefix+'-'+pk+'-red-pct').textContent=r+'%';\n    const bar=document.getElementById(prefix+'-'+pk+'-bar');\n    bar.innerHTML='<div class=\"seg g\" style=\"width:'+g+'%\">'+(g>=8?g+'%':'')+'<\/div>'\n      +'<div class=\"seg y\" style=\"width:'+y+'%\">'+(y>=8?y+'%':'')+'<\/div>'\n      +'<div class=\"seg r\" style=\"width:'+r+'%\">'+(r>=8?r+'%':'')+'<\/div>';\n  }\n  \/\/ Summary bar (Zielniveau = Phase 2)\n  const sg=s.p2g,sy=s.p2y,sr=s.p2r;\n  const sum=document.getElementById(prefix+'-ampel-summary');\n  if(sum) sum.innerHTML='<div class=\"ampel-bar-vis\"><div class=\"seg g\" style=\"width:'+sg+'%\">'+(sg>=12?sg+'%':'')+'<\/div><div class=\"seg y\" style=\"width:'+sy+'%\">'+(sy>=12?sy+'%':'')+'<\/div><div class=\"seg r\" style=\"width:'+sr+'%\">'+(sr>=12?sr+'%':'')+'<\/div><\/div>';\n}\n\nfunction calculateROI(phase1Savings,phase2Savings,setupCost){\n  let cumulative=0;\n  for(let m=1;m<=60;m++){\n    if(m<=12) cumulative+=phase1Savings;\n    else cumulative+=phase2Savings;\n    if(cumulative>=setupCost) return m;\n  }\n  return null;\n}\n\nfunction renderTimeline(prefix,phase1Savings,phase2Savings,setupCost){\n  const container=document.getElementById(prefix+'-timeline');\n  const mode=state[prefix].timelineMode;\n  let html='';\n  const deprYears=state[prefix].deprYears;\n\n  if(mode==='kumuliert'){\n    let maxVal=0;\n    const annualDepr=setupCost\/deprYears;\n    const data=[];\n    let cumulative=0;\n\n    for(let y=1;y<=5;y++){\n      let yearSavings=(y===1)?phase1Savings*12:phase2Savings*12;\n      const deprThisYear=(y<=deprYears)?annualDepr:0;\n      const netThisYear=yearSavings-deprThisYear;\n      cumulative+=netThisYear;\n      data.push({year:y,net:cumulative,netYear:netThisYear,depr:deprThisYear});\n      if(Math.abs(cumulative)>maxVal) maxVal=Math.abs(cumulative);\n    }\n\n    for(const d of data){\n      const pct=maxVal>0?Math.min(Math.abs(d.net)\/maxVal*100,100):0;\n      const isPos=d.net>=0;\n      html+='<div class=\"timeline-row\">';\n      html+='<div class=\"yr\">Jahr '+d.year+'<\/div>';\n      html+='<div class=\"bar-wrap\"><div class=\"bar-fill '+(isPos?'pos':'neg')+'\" style=\"width:'+pct+'%\"><\/div><\/div>';\n      html+='<div class=\"val '+(isPos?'pos':'neg')+'\">'+fmtE(d.net)+'<\/div>';\n      html+='<\/div>';\n    }\n    html+='<div class=\"timeline-note\">Kumulierte Ersparnis nach Abzug der Abschreibung ('+fmtE(annualDepr)+'\/Jahr \u00fcber '+deprYears+' Jahr'+(deprYears!==1?'e':'')+')<\/div>';\n  }else{\n    const annualDepr=setupCost\/deprYears;\n    const data=[];\n    for(let y=1;y<=5;y++){\n      const savings=(y===1)?phase1Savings*12:phase2Savings*12;\n      data.push({year:y,savings:savings,depr:(y<=deprYears)?annualDepr:0});\n    }\n\n    let maxVal=0;\n    for(const d of data){d.net=d.savings-d.depr;if(Math.abs(d.net)>maxVal)maxVal=Math.abs(d.net);}\n    for(const d of data){\n      const pct=maxVal>0?Math.min(Math.abs(d.net)\/maxVal*100,100):0;\n      const isPos=d.net>=0;\n      html+='<div class=\"timeline-row\">';\n      html+='<div class=\"yr\">Jahr '+d.year+'<\/div>';\n      html+='<div class=\"bar-wrap\"><div class=\"bar-fill '+(isPos?'pos':'neg')+'\" style=\"width:'+pct+'%\"><\/div><\/div>';\n      html+='<div class=\"val '+(isPos?'pos':'neg')+'\">'+fmtE(d.net)+'<\/div>';\n      html+='<\/div>';\n    }\n    html+='<div class=\"timeline-note\">J\u00e4hrliche Ersparnis nach Abzug der Abschreibung ('+fmtE(annualDepr)+'\/Jahr \u00fcber '+deprYears+' Jahr'+(deprYears!==1?'e':'')+')<\/div>';\n  }\n\n  const monthlyDepr=setupCost\/(deprYears*12);\n  html+='<div style=\"font-size:11px;color:var(--gray);margin-top:8px;padding-top:8px;border-top:1px solid var(--border)\">Monatliche Abschreibung: <strong>'+fmtE(monthlyDepr)+'<\/strong> (\u00fcber '+deprYears+' Jahr'+(deprYears!==1?'e':'')+')';\n\n  container.innerHTML=html;\n}\n\n\/\/ ===== AUFTR\u00c4GE =====\nfunction calcAuftraege(){\n  const orders=+document.getElementById('a-orders').value;\n  const mins=+document.getElementById('a-minutes').value;\n  const wage=+document.getElementById('a-wage').value;\n  const turnover=+document.getElementById('a-turnover').value;\n  const trainHPP=16; \/\/ fest: ~16h Einarbeitung pro Person\n  const errorHWeek=+document.getElementById('a-errors').value;\n  const projectCost=+document.getElementById('a-project-cost').value;\n  const optimCost=+document.getElementById('a-optimization-cost').value;\n\n  const setupCost=projectCost+optimCost;\n  state.a.setupCost=setupCost;\n\n  document.getElementById('val-a-orders').textContent=orders;\n  document.getElementById('val-a-minutes').textContent=mins;\n  document.getElementById('val-a-wage').textContent=wage;\n  document.getElementById('val-a-turnover').textContent=turnover;\n  document.getElementById('val-a-errors').textContent=errorHWeek;\n\n  const thr=document.getElementById('threshold-a');\n  if(orders>=15){\n    thr.className='threshold good';\n    thr.innerHTML='<span class=\"ico\">\u2705<\/span><span>Bei '+orders+' Auftr\u00e4gen\/Tag \u2014 optimaler Bereich.<\/span>';\n  }else{\n    thr.className='threshold warn';\n    thr.innerHTML='<span class=\"ico\">\u26a0\ufe0f<\/span><span>Besonders lohnend ab 15 Auftr\u00e4gen\/Tag.<\/span>';\n  }\n\n  const workDays=21;\n  const manualHours=(orders*mins*workDays)\/60;\n  const manualDirect=manualHours*wage;\n  const trainCostMonth=(turnover*trainHPP\/12)*wage;\n  const errorCostMonth=errorHWeek*4.33*wage;\n  const hiddenCost=trainCostMonth+errorCostMonth;\n  const manualTotal=manualDirect+hiddenCost;\n\n  const baseFee=499;\n  const usageCost=orders*1.0*workDays;\n\n  function personnelCosts(phaseNum){\n    const bd=getPhaseBreakdown('a',phaseNum);\n    const base=orders*workDays*mins\/60*wage;\n    return {green:base*bd.g*0.05,yellow:base*bd.y*0.3,red:base*bd.r*1.0,total:base*(bd.g*0.05+bd.y*0.3+bd.r*1.0)};\n  }\n\n  const pc1=personnelCosts(1),pc2=personnelCosts(2);\n  const cwoCostPhase1=baseFee+usageCost+pc1.total;\n  const cwoCostPhase2=baseFee+usageCost+pc2.total;\n\n  const savingsPhase1=manualTotal-cwoCostPhase1;\n  const savingsPhase2=manualTotal-cwoCostPhase2;\n\n  const savingsPct=manualTotal>0?Math.round((savingsPhase2\/manualTotal)*100):0;\n  const roiMonths=calculateROI(savingsPhase1,savingsPhase2,setupCost);\n\n  \/\/ FTE-Ersparnis (Zielniveau = Phase 2)\n  const manualHoursMonth=orders*workDays*mins\/60;\n  const bd2=getPhaseBreakdown('a',2);\n  const cwoHoursMonth=orders*workDays*mins*(bd2.g*0.05+bd2.y*0.3+bd2.r*1.0)\/60;\n  const fteSaved=(manualHoursMonth-cwoHoursMonth)\/(PRODUCTIVE_H_DAY*NET_DAYS_EMPLOYEE);\n\n  document.getElementById('a-cost-manual').textContent=fmtE(manualDirect);\n  document.getElementById('a-cost-hidden').textContent=fmtE(hiddenCost);\n  document.getElementById('a-cost-manual-total').textContent=fmtE(manualTotal);\n  document.getElementById('a-cost-usage').textContent=fmtE(usageCost);\n  document.getElementById('a-cost-p-green').textContent=fmtE(pc2.green);\n  document.getElementById('a-cost-p-yellow').textContent=fmtE(pc2.yellow);\n  document.getElementById('a-cost-p-red').textContent=fmtE(pc2.red);\n  document.getElementById('a-cost-cwo').textContent=fmtE(cwoCostPhase2);\n  document.getElementById('a-savings').textContent=fmtE(savingsPhase2);\n  document.getElementById('a-savings-pct').textContent=savingsPct;\n  document.getElementById('a-fte').innerHTML='\u2259 <strong>'+fmtDecimal(fteSaved)+'<\/strong> eingesparte Vollzeitstellen<\/strong><br><small style=\"opacity:.6\">Basis: '+NET_DAYS_EMPLOYEE+' Netto-Arbeitstage \u00d7 '+PRODUCTIVE_H_DAY+'h produktiv = '+(NET_DAYS_EMPLOYEE*PRODUCTIVE_H_DAY)+'h\/FTE<\/small>';\n  document.getElementById('a-phase1-savings').textContent=fmtE(savingsPhase1)+'\/Monat';\n  document.getElementById('a-phase2-savings').textContent=fmtE(savingsPhase2)+'\/Monat';\n  document.getElementById('a-roi').textContent='Investition amortisiert sich in ca. '+(roiMonths?roiMonths+' Monaten':'\u2013');\n\n  renderTimeline('a',savingsPhase1,savingsPhase2,setupCost);\n  renderAmpelUI('a');\n}\n\n\/\/ ===== LIEFERSCHEINE =====\nfunction calcLieferschein(){\n  const docs=+document.getElementById('l-docs').value;\n  const mins=+document.getElementById('l-minutes').value;\n  const wage=+document.getElementById('l-wage').value;\n  const projectCost=+document.getElementById('l-project-cost').value;\n  const optimCost=+document.getElementById('l-optimization-cost').value;\n\n  const setupCost=projectCost+optimCost;\n  state.l.setupCost=setupCost;\n\n  const workDays=21;\n\n  document.getElementById('val-l-docs').textContent=docs;\n  document.getElementById('val-l-minutes').textContent=mins;\n  document.getElementById('val-l-wage').textContent=wage;\n\n  const thr=document.getElementById('threshold-l');\n  if(docs>=20){\n    thr.className='threshold good';\n    thr.innerHTML='<span class=\"ico\">\u2705<\/span><span>Bei '+docs+' Lieferscheinen\/Tag \u2014 optimaler Bereich.<\/span>';\n  }else{\n    thr.className='threshold warn';\n    thr.innerHTML='<span class=\"ico\">\u26a0\ufe0f<\/span><span>Besonders lohnend ab 20 Lieferscheinen\/Tag.<\/span>';\n  }\n\n  const manualHours=(docs*workDays*mins)\/60;\n  const manualDirect=manualHours*wage;\n  const hiddenCost=0;\n  const manualTotal=manualDirect;\n\n  const baseFee=249;\n  const usageCost=docs*workDays*0.50;\n\n  function personnelCosts(phaseNum){\n    const bd=getPhaseBreakdown('l',phaseNum);\n    const base=docs*workDays*mins\/60*wage;\n    return {green:base*bd.g*0.05,yellow:base*bd.y*0.25,red:base*bd.r*1.0,total:base*(bd.g*0.05+bd.y*0.25+bd.r*1.0)};\n  }\n\n  const pc1=personnelCosts(1),pc2=personnelCosts(2);\n  const cwoCostPhase1=baseFee+usageCost+pc1.total;\n  const cwoCostPhase2=baseFee+usageCost+pc2.total;\n\n  const savingsPhase1=manualTotal-cwoCostPhase1;\n  const savingsPhase2=manualTotal-cwoCostPhase2;\n\n  const savingsPct=manualTotal>0?Math.round((savingsPhase2\/manualTotal)*100):0;\n  const roiMonths=calculateROI(savingsPhase1,savingsPhase2,setupCost);\n\n  \/\/ FTE-Ersparnis (Zielniveau = Phase 2)\n  const manualHoursMonthL=docs*workDays*mins\/60;\n  const bd2=getPhaseBreakdown('l',2);\n  const cwoHoursMonthL=docs*workDays*mins*(bd2.g*0.05+bd2.y*0.25+bd2.r*1.0)\/60;\n  const fteSaved=(manualHoursMonthL-cwoHoursMonthL)\/(PRODUCTIVE_H_DAY*NET_DAYS_EMPLOYEE);\n\n  document.getElementById('l-cost-manual').textContent=fmtE(manualDirect);\n  document.getElementById('l-cost-usage').textContent=fmtE(usageCost);\n  document.getElementById('l-cost-p-green').textContent=fmtE(pc2.green);\n  document.getElementById('l-cost-p-yellow').textContent=fmtE(pc2.yellow);\n  document.getElementById('l-cost-p-red').textContent=fmtE(pc2.red);\n  document.getElementById('l-cost-cwo').textContent=fmtE(cwoCostPhase2);\n  document.getElementById('l-savings').textContent=fmtE(savingsPhase2);\n  document.getElementById('l-savings-pct').textContent=savingsPct;\n  document.getElementById('l-fte').innerHTML='\u2259 <strong>'+fmtDecimal(fteSaved)+'<\/strong> eingesparte Vollzeitstellen<\/strong><br><small style=\"opacity:.6\">Basis: '+NET_DAYS_EMPLOYEE+' Netto-Arbeitstage \u00d7 '+PRODUCTIVE_H_DAY+'h produktiv = '+(NET_DAYS_EMPLOYEE*PRODUCTIVE_H_DAY)+'h\/FTE<\/small>';\n  document.getElementById('l-phase1-savings').textContent=fmtE(savingsPhase1)+'\/Monat';\n  document.getElementById('l-phase2-savings').textContent=fmtE(savingsPhase2)+'\/Monat';\n  document.getElementById('l-roi').textContent='Investition amortisiert sich in ca. '+(roiMonths?roiMonths+' Monaten':'\u2013');\n\n  renderTimeline('l',savingsPhase1,savingsPhase2,setupCost);\n  renderAmpelUI('l');\n}\n\n\/\/ ===== SERVICE =====\nfunction calcService(){\n  const sheets=+document.getElementById('s-sheets').value;\n  const mins=+document.getElementById('s-minutes').value;\n  const wage=+document.getElementById('s-wage').value;\n  const matCostYear=+document.getElementById('s-matcost').value;\n  const errorHWeek=+document.getElementById('s-errors').value;\n  const projectCost=+document.getElementById('s-project-cost').value;\n  const optimCost=+document.getElementById('s-optimization-cost').value;\n\n  const setupCost=projectCost+optimCost;\n  state.s.setupCost=setupCost;\n\n  const workDays=21;\n  document.getElementById('val-s-sheets').textContent=sheets;\n  document.getElementById('val-s-minutes').textContent=mins;\n  document.getElementById('val-s-wage').textContent=wage;\n  document.getElementById('val-s-matcost').textContent=fmtN(matCostYear);\n  document.getElementById('val-s-errors').textContent=errorHWeek;\n\n  const thr=document.getElementById('threshold-s');\n  if(sheets>=10){\n    thr.className='threshold good';\n    thr.innerHTML='<span class=\"ico\">\u2705<\/span><span>Bei '+sheets+' Servicemeldungen\/Tag \u2014 optimaler Bereich.<\/span>';\n  }else{\n    thr.className='threshold warn';\n    thr.innerHTML='<span class=\"ico\">\u26a0\ufe0f<\/span><span>Besonders lohnend ab 10 Servicemeldungen\/Tag.<\/span>';\n  }\n\n  const manualHours=(sheets*workDays*mins)\/60;\n  const manualDirect=manualHours*wage;\n  const matCostMonth=matCostYear\/12;\n  const errorCostMonth=errorHWeek*4.33*wage;\n  const hiddenCost=matCostMonth+errorCostMonth;\n  const manualTotal=manualDirect+hiddenCost;\n\n  const baseFee=249;\n  const usageCost=sheets*workDays*0.50;\n\n  function personnelCosts(phaseNum){\n    const bd=getPhaseBreakdown('s',phaseNum);\n    const base=sheets*workDays*mins\/60*wage;\n    return {green:base*bd.g*0.0,yellow:base*bd.y*0.2,red:base*bd.r*1.0,total:base*(bd.g*0.0+bd.y*0.2+bd.r*1.0)};\n  }\n\n  const pc1=personnelCosts(1),pc2=personnelCosts(2);\n  const cwoCostPhase1=baseFee+usageCost+pc1.total;\n  const cwoCostPhase2=baseFee+usageCost+pc2.total;\n\n  const savingsPhase1=manualTotal-cwoCostPhase1;\n  const savingsPhase2=manualTotal-cwoCostPhase2;\n\n  const savingsPct=manualTotal>0?Math.round((savingsPhase2\/manualTotal)*100):0;\n  const roiMonths=calculateROI(savingsPhase1,savingsPhase2,setupCost);\n\n  \/\/ FTE-Ersparnis (Zielniveau = Phase 2)\n  const manualHoursMonthS=sheets*workDays*mins\/60;\n  const bd2=getPhaseBreakdown('s',2);\n  const cwoHoursMonthS=sheets*workDays*mins*(bd2.g*0.0+bd2.y*0.2+bd2.r*1.0)\/60;\n  const fteSaved=(manualHoursMonthS-cwoHoursMonthS)\/(PRODUCTIVE_H_DAY*NET_DAYS_EMPLOYEE);\n\n  document.getElementById('s-cost-manual').textContent=fmtE(manualDirect);\n  document.getElementById('s-cost-hidden').textContent=fmtE(hiddenCost);\n  document.getElementById('s-cost-manual-total').textContent=fmtE(manualTotal);\n  document.getElementById('s-cost-usage').textContent=fmtE(usageCost);\n  document.getElementById('s-cost-p-green').textContent=fmtE(pc2.green);\n  document.getElementById('s-cost-p-yellow').textContent=fmtE(pc2.yellow);\n  document.getElementById('s-cost-p-red').textContent=fmtE(pc2.red);\n  document.getElementById('s-cost-cwo').textContent=fmtE(cwoCostPhase2);\n  document.getElementById('s-savings').textContent=fmtE(savingsPhase2);\n  document.getElementById('s-savings-pct').textContent=savingsPct;\n  document.getElementById('s-fte').innerHTML='\u2259 <strong>'+fmtDecimal(fteSaved)+'<\/strong> eingesparte Vollzeitstellen<\/strong><br><small style=\"opacity:.6\">Basis: '+NET_DAYS_EMPLOYEE+' Netto-Arbeitstage \u00d7 '+PRODUCTIVE_H_DAY+'h produktiv = '+(NET_DAYS_EMPLOYEE*PRODUCTIVE_H_DAY)+'h\/FTE<\/small>';\n  document.getElementById('s-phase1-savings').textContent=fmtE(savingsPhase1)+'\/Monat';\n  document.getElementById('s-phase2-savings').textContent=fmtE(savingsPhase2)+'\/Monat';\n  document.getElementById('s-roi').textContent='Investition amortisiert sich in ca. '+(roiMonths?roiMonths+' Monaten':'\u2013');\n\n  renderTimeline('s',savingsPhase1,savingsPhase2,setupCost);\n  renderAmpelUI('s');\n}\n\ncalcAuftraege();calcLieferschein();calcService();\n<\/script>\n<script>\nfunction activateTabFromUrl(){\n  const params = new URLSearchParams(window.location.search);\n  const tab = params.get(\"tab\");\n\n  if(!tab) return;\n\n  const map = {\n    auftraege: \"calc-auftraege\",\n    service: \"calc-service\",\n    lieferschein: \"calc-lieferschein\"\n  };\n\n  if(!map[tab]) return;\n\n  document.querySelectorAll('.calc-section').forEach(s=>s.classList.remove('active'));\n  document.querySelectorAll('.ptab').forEach(b=>b.classList.remove('active'));\n\n  const target = document.getElementById(map[tab]);\n  if(target) target.classList.add('active');\n\n  const btn = document.querySelector(`.ptab[onclick*=\"${tab}\"]`);\n  if(btn) btn.classList.add('active');\n}\n\nactivateTabFromUrl();\n<\/script>\n\n\n\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Calculate now Find out how much you can save with CWO Order CWO Service CWO Delivery Note CWO Automatic processing of incoming customer orders via email \u2014 from reading and data extraction to booking in the ERP system. \ud83d\udccb Your details \u2705CWO is particularly worthwhile from 15 orders\/day. Orders via email per day 50 orders\/day [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"footnotes":""},"class_list":["post-1660","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/pages\/1660","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/comments?post=1660"}],"version-history":[{"count":1,"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/pages\/1660\/revisions"}],"predecessor-version":[{"id":1661,"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/pages\/1660\/revisions\/1661"}],"wp:attachment":[{"href":"https:\/\/www.cwo.de\/en\/wp-json\/wp\/v2\/media?parent=1660"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}