1<!DOCTYPE html> 2<html lang="de" data-theme="light"> 3<head> 4<meta charset="utf-8"> 5<meta http-equiv="X-UA-Compatible" content="IE=edge"> 6<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1.0, shrink-to-fit=no"> 7 8<title>gaeb-online: Sitemap von GAEB-Online 2025</title> 9<meta name="description" content="Sitemap von gaeb-online.de â alle Seiten der Website im Ãberblick: Software, Funktionen, Preise, Downloads, FAQ und Kontakt."> 10<meta name="keywords" content="gaeb, gaeb datei, GAEB XML, GAEB DA XML, GAEB 2000, GAEB 90, Excel, LV, Kalkulation, D84, D83, P83, P84, X83, X84, EFB 223, EFB 221, D11, DA11, X31, X89, XRechnung, REB 23.003, Excel-AufmaÃ"> 11<meta name="author" content="Ulrike Braun"> 12<meta name="publisher" content="Ulrike Braun"> 13<meta name="company" content="gaeb-online, Ulrike Braun"> 14<meta name="page-topic" content="Bausoftware"> 15<meta name="page-type" content="Produktinfo, Software, Download"> 16<meta name="reply-to" content="[email protected]"> 17<meta name="robots" content="index,follow"> 18<meta name="audience" content="Alle"> 19 20<link rel="canonical" href="https://www.gaeb-online.de/sitemap.html"> 21<link rel="alternate" hreflang="de" href="https://www.gaeb-online.de/sitemap.html"> 22<link rel="alternate" hreflang="x-default" href="https://www.gaeb-online.de/sitemap.html"> 23 24<!-- Open Graph / Facebook --> 25<meta property="og:type" content="website"> 26<meta property="og:site_name" content="GAEB-Online"> 27<meta property="og:locale" content="de_DE"> 28<meta property="og:url" content="https://www.gaeb-online.de/sitemap.html"> 29<meta property="og:title" content="gaeb-online: Sitemap von GAEB-Online 2025"> 30<meta property="og:description" content="Sitemap von gaeb-online.de â alle Seiten der Website im Ãberblick: Software, Funktionen, Preise, Downloads, FAQ und Kontakt."> 31<meta property="og:image" content="https://www.gaeb-online.de/pics/main.webp"> 32<meta property="og:image:alt" content="gaeb-online: Sitemap von GAEB-Online 2025"> 33 34<!-- Twitter / X --> 35<meta name="twitter:card" content="summary_large_image"> 36<meta name="twitter:title" content="gaeb-online: Sitemap von GAEB-Online 2025"> 37<meta name="twitter:description" content="Sitemap von gaeb-online.de â alle Seiten der Website im Ãberblick: Software, Funktionen, Preise, Downloads, FAQ und Kontakt."> 38<meta name="twitter:image" content="https://www.gaeb-online.de/pics/main.webp"> 39<meta name="twitter:image:alt" content="gaeb-online: Sitemap von GAEB-Online 2025"> 40 41<link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico"> 42<link rel="apple-touch-icon" href="img/gaeb-touch-icon.png"> 43 44<!-- Preconnect für Cookie-Consent-Domain (wird lazy geladen) --> 45<link rel="preconnect" href="https://consent.cookiefirst.com/" crossorigin> 46 47<!-- Preload wichtigste Fonts --> 48<link rel="preload" as="font" type="font/woff2" href="fonts/inter-latin-400-normal.woff2" crossorigin> 49<link rel="preload" as="font" type="font/woff2" href="fonts/inter-latin-700-normal.woff2" crossorigin> 50 51<!-- Stylesheet (self-hosted, DSGVO-konform, keine externen Abhängigkeiten) --> 52<link rel="stylesheet" href="assets/styles.css"> 53 54<!-- FOUC-freier Theme-Init (muss vor Body-Render laufen) -->
55<script src="assets/theme-init.js"></script>
55 56 57<!-- Privacy-friendly analytics by Plausible (cookie-frei, DSGVO-konform) -->
58<script defer src="https://plausible.io/js/pa-JcqnpeHxqSm44cCHVN0yN.js"></script>
vendor: 2 bytes, line 58
58
59<script> 60 window.plausible=window.plausible||function(){(plausible.q=plausible.q||[]).push(arguments)},plausible.init=plausible.init||function(i){plausible.o=i||{}}; 61 plausible.init(); 62 63 // Custom Event: Aufruf einer Wissen-Ratgeber-Seite 64 (function(){ 65 var wissenSlugs = [ 66 'gaeb-wissen', 67 'gaeb-datei-oeffnen', 68 'gaeb-in-excel-umwandeln', 69 'gaeb-x83-datei', 70 'gaeb-x84-datei', 71 'gaeb-d83-d84-erklaert', 72 'gaeb-aufmass', 73 'gaeb-da11-datei', 74 'gaeb-x31-datei' 75 ]; 76 var path = location.pathname.replace(/^.*\//, '').replace(/\.html$/, ''); 77 if (wissenSlugs.indexOf(path) !== -1 && window.plausible) { 78 window.plausible('Wissen-Seite', { props: { seite: path } }); 79 } 80 })(); 81 82</script>
82 83 84<!-- Strukturierte Daten -->
85<script type="application/ld+json"> 86{ 87 "@context" : "https://schema.org", 88 "@type" : "SoftwareApplication", 89 "name" : "GAEB-Online 2025", 90 "image" : "https://www.gaeb-online.de/img/logo_head.webp", 91 "url" : "https://www.gaeb-online.de", 92 "author" : { 93 "@type" : "Person", 94 "name" : "Ulrike Braun" 95 }, 96 "datePublished" : "2025-01-08", 97 "publisher" : { 98 "@type" : "Organization", 99 "name" : "gaeb-online, Ulrike Braun" 100 }, 101 "offers": { 102 "@type": "Offer", 103 "price": "120.00", 104 "priceCurrency": "EUR" 105 }, 106 "applicationCategory" : "Bau-Software", 107 "downloadUrl" : "https://www.gaeb-online.de/download/setup_GO2025.exe", 108 "operatingSystem" : "Windows", 109 "requirements" : ".NET 4.8", 110 "screenshot" : "https://www.gaeb-online.de/pics/gaeb_signatur_paper.png", 111 "softwareVersion" : "2025" 112 } 113</script>
113 114 115</head> 116 117<body> 118 119<!-- ============ LUCIDE SVG-SPRITE (inline) ============ 120 Quelle: https://lucide.dev (ISC License). 121 Inline eingebettet, damit <use href="#name"/> auch bei lokalem Aufruf 122 (file://) in allen Browsern funktioniert. Die Pflege erfolgt in 123 assets/icons.svg; Aenderungen dort bitte hierher synchronisieren. --> 124<svg xmlns="http://www.w3.org/2000/svg" style="display:none" aria-hidden="true"> 125 <symbol id="check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"/></symbol> 126 <symbol id="check-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/></symbol> 127 <symbol id="box" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"/><path d="m3.3 7 8.7 5 8.7-5"/><path d="M12 22V12"/></symbol> 128 <symbol id="monitor" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="20" height="14" x="2" y="3" rx="2"/><line x1="8" x2="16" y1="21" y2="21"/><line x1="12" x2="12" y1="17" y2="21"/></symbol> 129 <symbol id="download" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" x2="12" y1="15" y2="3"/></symbol> 130 <symbol id="shield" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/></symbol> 131 <symbol id="shopping-cart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="8" cy="21" r="1"/><circle cx="19" cy="21" r="1"/><path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/></symbol> 132 <symbol id="arrow-right" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14"/><path d="m12 5 7 7-7 7"/></symbol> 133 <symbol id="zap" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2 3 14h9l-1 8 10-12h-9l1-8z"/></symbol> 134 <symbol id="euro" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 10h12"/><path d="M4 14h9"/><path d="M19 6a7.7 7.7 0 0 0-5.2-2A7.9 7.9 0 0 0 6 12c0 4.4 3.5 8 7.8 8 2 0 3.8-.8 5.2-2"/></symbol> 135 <symbol id="list" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" x2="21" y1="6" y2="6"/><line x1="8" x2="21" y1="12" y2="12"/><line x1="8" x2="21" y1="18" y2="18"/><line x1="3" x2="3.01" y1="6" y2="6"/><line x1="3" x2="3.01" y1="12" y2="12"/><line x1="3" x2="3.01" y1="18" y2="18"/></symbol> 136 <symbol id="file" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><polyline points="14 2 14 8 20 8"/></symbol> 137 <symbol id="file-text" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><line x1="10" y1="9" x2="8" y2="9"/></symbol> 138 <symbol id="file-spreadsheet" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><polyline points="14 2 14 8 20 8"/><path d="M8 13h2"/><path d="M14 13h2"/><path d="M8 17h2"/><path d="M14 17h2"/></symbol> 139 <symbol id="file-code" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><polyline points="14 2 14 8 20 8"/><path d="m10 13-2 2 2 2"/><path d="m14 17 2-2-2-2"/></symbol> 140 <symbol id="pencil" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"/></symbol> 141 <symbol id="check-square" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 11 12 14 22 4"/><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"/></symbol> 142 <symbol id="users" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></symbol> 143 <symbol id="usb" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="10" cy="7" r="1"/><circle cx="4" cy="20" r="1"/><path d="M4.7 19.3 19 5"/><path d="m21 3-3 1 2 2Z"/><path d="M9.26 7.68 5 12l2 5"/><path d="m10 14 5 2 3-2"/><path d="m11 10 4-2"/></symbol> 144 <symbol id="network" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="16" y="16" width="6" height="6" rx="1"/><rect x="2" y="16" width="6" height="6" rx="1"/><rect x="9" y="2" width="6" height="6" rx="1"/><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"/><path d="M12 12V8"/></symbol> 145 <symbol id="log-out" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/><polyline points="16 17 21 12 16 7"/><line x1="21" x2="9" y1="12" y2="12"/></symbol> 146 <symbol id="share" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"/><polyline points="16 6 12 2 8 6"/><line x1="12" x2="12" y1="2" y2="15"/></symbol> 147 <symbol id="share-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><line x1="8.59" x2="15.42" y1="13.51" y2="17.49"/><line x1="15.41" x2="8.59" y1="6.51" y2="10.49"/></symbol> 148 <symbol id="server" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="20" height="8" x="2" y="2" rx="2" ry="2"/><rect width="20" height="8" x="2" y="14" rx="2" ry="2"/><line x1="6" x2="6.01" y1="6" y2="6"/><line x1="6" x2="6.01" y1="18" y2="18"/></symbol> 149 <symbol id="reply" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 17 4 12 9 7"/><path d="M20 18v-2a4 4 0 0 0-4-4H4"/></symbol> 150 <symbol id="quote" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z"/><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z"/></symbol>
151 <symbol id="info" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></symbol> 152 <symbol id="filter" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"/></symbol> 153 <symbol id="arrow-right-left" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m16 3 4 4-4 4"/><path d="M20 7H4"/><path d="m8 21-4-4 4-4"/><path d="M4 17h16"/></symbol> 154 <symbol id="mail" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="20" height="16" x="2" y="4" rx="2"/><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"/></symbol> 155 <symbol id="settings" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"/><circle cx="12" cy="12" r="3"/></symbol> 156 <symbol id="code" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></symbol> 157 <symbol id="calculator" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="16" height="20" x="4" y="2" rx="2"/><line x1="8" x2="16" y1="6" y2="6"/><line x1="16" x2="16" y1="14" y2="18"/><path d="M16 10h.01"/><path d="M12 10h.01"/><path d="M8 10h.01"/><path d="M12 14h.01"/><path d="M8 14h.01"/><path d="M12 18h.01"/><path d="M8 18h.01"/></symbol> 158 <symbol id="ban" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m4.9 4.9 14.2 14.2"/></symbol> 159 <symbol id="arrow-right-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m12 16 4-4-4-4"/><path d="M8 12h8"/></symbol> 160 <symbol id="compass" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/></symbol> 161 <symbol id="bar-chart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 3v18h18"/><path d="M18 17V9"/><path d="M13 17V5"/><path d="M8 17v-3"/></symbol> 162 <symbol id="clipboard-list" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="8" height="4" x="8" y="2" rx="1" ry="1"/><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/><path d="M12 11h4"/><path d="M12 16h4"/><path d="M8 11h.01"/><path d="M8 16h.01"/></symbol> 163 <symbol id="ruler" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.3 8.7 8.7 21.3a2.4 2.4 0 0 1-3.4 0l-2.6-2.6a2.41 2.41 0 0 1 0-3.4L15.3 2.7a2.41 2.41 0 0 1 3.4 0l2.6 2.6a2.4 2.4 0 0 1 0 3.4Z"/><path d="m7.5 10.5 2 2"/><path d="m10.5 7.5 2 2"/><path d="m13.5 4.5 2 2"/><path d="m4.5 13.5 2 2"/></symbol> 164 <symbol id="target" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><circle cx="12" cy="12" r="6"/><circle cx="12" cy="12" r="2"/></symbol>
165 <symbol id="badge-check" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z"/><path d="m9 12 2 2 4-4"/></symbol> 166 <symbol id="bot" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></symbol> 167 <symbol id="printer" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 6 2 18 2 18 9"/><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"/><rect width="12" height="8" x="6" y="14"/></symbol> 168 <symbol id="clock" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></symbol> 169 <symbol id="wrench" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"/></symbol> 170 <symbol id="link" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></symbol> 171 <symbol id="lock" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="11" x="3" y="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></symbol> 172 <symbol id="unlock" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="11" x="3" y="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 9.9-1"/></symbol> 173 <symbol id="refresh-cw" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/><path d="M21 3v5h-5"/><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/><path d="M8 16H3v5"/></symbol> 174 <symbol id="shuffle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 3h5v5"/><path d="M4 20 21 3"/><path d="M21 16v5h-5"/><path d="m15 15 6 6"/><path d="M4 4l5 5"/></symbol> 175 <symbol id="upload" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="17 8 12 3 7 8"/><line x1="12" x2="12" y1="3" y2="15"/></symbol> 176 <symbol id="paperclip" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 17.93 8.8l-8.57 8.57a2 2 0 0 1-2.83-2.83l7.07-7.07"/></symbol> 177 <symbol id="hard-hat" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 18a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1Z"/><path d="M10 10V5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v5"/><path d="M4 15v-3a6 6 0 0 1 6-6"/><path d="M14 6a6 6 0 0 1 6 6v3"/></symbol> 178 <symbol id="film" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="18" x="3" y="3" rx="2"/><path d="M7 3v18"/><path d="M3 7.5h4"/><path d="M3 12h18"/><path d="M3 16.5h4"/><path d="M17 3v18"/><path d="M17 7.5h4"/><path d="M17 16.5h4"/></symbol> 179 <symbol id="scale" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z"/>
179<path d="m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z"/><path d="M7 21h10"/><path d="M12 3v18"/><path d="M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2"/></symbol> 180 <symbol id="timer" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="10" x2="14" y1="2" y2="2"/><line x1="12" x2="15" y1="14" y2="11"/><circle cx="12" cy="14" r="8"/></symbol> 181 <symbol id="image" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"/></symbol> 182 <symbol id="trending-up" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 7 13.5 15.5 8.5 10.5 2 17"/><polyline points="16 7 22 7 22 13"/></symbol> 183 <symbol id="save" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/><polyline points="7 3 7 8 15 8"/></symbol> 184 <symbol id="eye" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z"/><circle cx="12" cy="12" r="3"/></symbol> 185 <symbol id="globe" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"/><path d="M2 12h20"/></symbol> 186 <symbol id="help-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><line x1="12" x2="12.01" y1="17" y2="17"/></symbol> 187 <symbol id="brain" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/><path d="M3.477 10.896a4 4 0 0 1 .585-.396"/><path d="M19.938 10.5a4 4 0 0 1 .585.396"/><path d="M6 18a4 4 0 0 1-1.967-.516"/><path d="M19.967 17.484A4 4 0 0 1 18 18"/></symbol> 188 <symbol id="files" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 7h-3a2 2 0 0 1-2-2V2"/><path d="M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h6l5 5v9a2 2 0 0 1-2 2Z"/><path d="M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8"/></symbol> 189 <symbol id="arrow-left" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m12 19-7-7 7-7"/><path d="M19 12H5"/></symbol> 190 <symbol id="calendar" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 2v4"/><path d="M16 2v4"/><rect width="18" height="18" x="3" y="4" rx="2"/><path d="M3 10h18"/></symbol> 191 <symbol id="layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z"/><path d="m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65"/><path d="m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65"/></symbol> 192 <symbol id="pie-chart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.21 15.89A10 10 0 1 1 8 2.83"/><path d="M22 12A10 10 0 0 0 12 2v10z"/></symbol> 193 <symbol id="lightbulb" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/><path d="M9 18h6"/><path d="M10 22h4"/></symbol> 194 <!-- Versionsmatrix (gaeb-versionen.html / gaeb-funktionen.html): Ja / Nein --> 195 <symbol id="v-yes" viewBox="0 0 24 24" fill="none" stroke="currentColor"><circle cx="12" cy="12" r="11" stroke-width="2"/><path d="M7 12.5l3.2 3.2L17 8.8" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></symbol> 196 <symbol id="v-no" viewBox="0 0 24 24" fill="none" stroke="currentColor"><circle cx="12" cy="12" r="11" stroke-width="2"/><path d="M8 8l8 8M16 8l-8 8" stroke-width="2.4" stroke-linecap="round"/></symbol> 197</svg> 198 199<!-- Skip-Link für Screenreader --> 200<a href="#main" class="skip-link">Zum Inhalt springen</a> 201 202<!-- ============ TOPBAR ============ --> 203<div class="topbar" role="complementary" aria-label="Service-Navigation"> 204 <div class="container"> 205 <div class="topbar-inner"> 206 <a href="gaeb-schulung.html">Schulung</a>
207 <span class="topbar-divider" aria-hidden="true"></span> 208 <a href="sitemap.html">Sitemap</a> 209 <span class="topbar-divider" aria-hidden="true"></span> 210 <a href="gaeb-impr.html">Impressum</a> 211 <span class="topbar-divider" aria-hidden="true"></span> 212 <a href="index-en.html" lang="en">English</a> 213 <span class="topbar-divider" aria-hidden="true"></span> 214 <button class="topbar-btn" type="button" data-theme-toggle aria-pressed="false" aria-label="Dunkelmodus aktivieren"> 215 <svg class="icon-moon" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg> 216 <svg class="icon-sun" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41"/></svg> 217 <span>Modus</span> 218 </button> 219 </div> 220 </div> 221</div> 222 223<!-- ============ HEADER ============ --> 224<header class="header" role="banner"> 225 <div class="container"> 226 <div class="header-inner"> 227 228 <!-- Brand --> 229 <a href="index.html" class="brand" aria-label="GAEB-Online 2025 â Startseite"> 230 <img src="img/logo_head.webp" alt="GAEB-Online 2025 Logo" width="120" height="31" loading="eager" decoding="async"> 231 </a> 232 233 <!-- Haupt-Navigation (Desktop) --> 234 <nav class="nav" role="navigation" aria-label="Hauptnavigation"> 235 236 <div class="nav-item has-dropdown"> 237 <a href="#" class="nav-link">Software 238 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 239 </a> 240 <div class="dropdown dropdown-desc" role="menu"> 241 <a href="gaeb-aktuell.html" class="dropdown-link" role="menuitem"><strong>GAEB-Online 2025 â Einzelplatz</strong><small>Hauptprodukt für Windows</small></a> 242 <a href="gaeb-online-usb.html" class="dropdown-link" role="menuitem"><strong>GAEB-Online 2025 â USB-Stick</strong><small>Portable Version auf USB-Stick</small></a> 243 <a href="gaeb-preis-ts.html" class="dropdown-link" role="menuitem"><strong>GAEB-Online 2025 â Terminalserver</strong><small>Für Windows Terminalserver</small></a> 244 <a href="gaeb-ki-preisnavigator.html" class="dropdown-link" role="menuitem"><strong>GAEB-KI-PreisNavigator</strong><small>KI-gestützte Preiskalkulation</small></a> 245 <div class="dropdown-divider" role="separator"></div> 246 <a href="gaeb-schulung.html" class="dropdown-link" role="menuitem"><strong>Schulung per Video-Training</strong><small>Lernen Sie GAEB-Online 2025</small></a> 247 <a href="gaeb-produktbeschreibung.html" class="dropdown-link" role="menuitem"><strong>Produktbeschreibung</strong><small>Beschreibungen aller Produkte</small></a> 248 </div> 249 </div> 250 251 <div class="nav-item has-dropdown"> 252 <a href="#" class="nav-link">Erweiterungen 253 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 254 </a> 255 <div class="dropdown dropdown-desc" role="menu"> 256 <a href="gaeb-efb-221-223.html" class="dropdown-link" role="menuitem"><strong>Excel EFB-Kalkulation</strong><small>EFB 221 / 223 aus Urkalkulation</small></a> 257 <a href="gaeb-efb-ekt-detail.html" class="dropdown-link" role="menuitem"><strong>Excel EFB-EKT-Detail</strong><small>Detaillierte Kostenansätze je Position</small></a> 258 <a href="gaeb-efb-221-rueck.html" class="dropdown-link" role="menuitem"><strong>Excel EFB-Rückwärtskalkulation</strong><small>Nachträgliche Aufteilung vorhandener EP</small></a> 259 <div class="dropdown-divider" role="separator"></div> 260 <a href="gaeb-excel-aufmass.html" class="dropdown-link" role="menuitem"><strong>Excel-Aufmaà XRechnung</strong><small>Aufmaà mit XRechnung 3.0</small></a> 261 <a href="gaeb-x31-generator.html" class="dropdown-link" role="menuitem"><strong>GAEB-X31-Generator</strong><small>GAEB X31 aus einem Excel-LV</small></a>
262 <a href="gaeb-excel-xrechnung.html" class="dropdown-link" role="menuitem"><strong>Excel Vorlage für XRechnung</strong><small>XRechnung direkt aus Excel</small></a> 263 <div class="dropdown-divider" role="separator"></div> 264 <a href="gaeb-excel-lv-generator.html" class="dropdown-link" role="menuitem"><strong>Excel-LV-Generator <span class="free-badge">KOSTENLOS</span></strong><small>Excel-Vorlage für GAEB-Online 2025</small></a> 265 </div> 266 </div> 267 268 <div class="nav-item has-dropdown"> 269 <a href="#" class="nav-link">Funktionen 270 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 271 </a> 272 <div class="dropdown" role="menu"> 273 <a href="gaeb-excel-gaeb.html" class="dropdown-link" role="menuitem">Excel in GAEB konvertieren</a> 274 <a href="gaeb-excel.html" class="dropdown-link" role="menuitem">Export in Excel</a> 275 <a href="gaeb-excel-kalk.html" class="dropdown-link" role="menuitem">Kalkulation in Excel</a> 276 <a href="gaeb-ekt.html" class="dropdown-link" role="menuitem">Einzelkosten der Teilleistungen</a> 277 <a href="gaeb-open.html" class="dropdown-link" role="menuitem">Export in OpenOffice</a> 278 <a href="gaeb-imp-excel.html" class="dropdown-link" role="menuitem">Import Preise aus Excel</a> 279 <a href="gaeb-da84.html" class="dropdown-link" role="menuitem">Export DA84</a> 280 <a href="gaeb-imp-da84.html" class="dropdown-link" role="menuitem">Import DA84</a> 281 <a href="gaeb-imp-x94.html" class="dropdown-link" role="menuitem">Import X94 und P94</a> 282 <a href="gaeb-excel-aufmass.html" class="dropdown-link" role="menuitem">Aufmaà und Rechnung</a> 283 <a href="gaeb-excel-xrechnung.html" class="dropdown-link" role="menuitem">XRechnung</a> 284 <a href="gaeb-word.html" class="dropdown-link" role="menuitem">Export in Word</a> 285 <a href="gaeb-excel-konverter.html" class="dropdown-link" role="menuitem">Konverter für GAEB</a> 286 <a href="gaeb-phasen.html" class="dropdown-link" role="menuitem">GAEB Austauschphasen</a> 287 <a href="gaeb-funktionen.html" class="dropdown-link" role="menuitem"><strong>Ãbersicht der Funktionen</strong></a> 288 </div> 289 </div> 290 291 <div class="nav-item has-dropdown"> 292 <a href="#" class="nav-link">Preise 293 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 294 </a> 295 <div class="dropdown" role="menu"> 296 <a href="gaeb-preis.html" class="dropdown-link" role="menuitem"><strong>Preise â Einzelplatz</strong></a> 297 <a href="gaeb-preis-usb.html" class="dropdown-link" role="menuitem">Preise â USB</a> 298 <a href="gaeb-preis-ts.html" class="dropdown-link" role="menuitem">Preise â Terminalserver</a> 299 <a href="gaeb-ueber.html" class="dropdown-link" role="menuitem">Preisliste / Produktübersicht</a> 300 </div> 301 </div> 302 303 <a href="gaeb-download.html" class="nav-link">Download</a> 304 305 <a href="gaeb-ki-preisnavigator.html" class="nav-link">GAEB-KI</a> 306 307 <div class="nav-item has-dropdown"> 308 <a href="gaeb-wissen.html" class="nav-link">Wissen 309 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 310 </a> 311 <div class="dropdown" role="menu"> 312 <a href="gaeb-wissen.html" class="dropdown-link" role="menuitem"><strong>Ãbersicht: GAEB-Wissen</strong></a> 313 <a href="gaeb-datei-oeffnen.html" class="dropdown-link" role="menuitem">GAEB-Datei öffnen</a> 314 <a href="gaeb-in-excel-umwandeln.html" class="dropdown-link" role="menuitem">GAEB in Excel umwandeln</a> 315 <a href="pdf-in-gaeb-umwandeln.html" class="dropdown-link" role="menuitem">PDF in GAEB umwandeln</a> 316 <a href="gaeb-x83-datei.html" class="dropdown-link" role="menuitem">X83-Datei erklärt</a> 317 <a href="gaeb-x84-datei.html" class="dropdown-link" role="menuitem">X84-Datei erklärt</a> 318 <a href="gaeb-d83-d84-erklaert.html" class="dropdown-link" role="menuitem">D83 & D84 (GAEB 90) erklärt</a> 319 <a href="gaeb-aufmass.html" class="dropdown-link" role="menuitem">Aufmaà im Bau (REB 23.003)</a> 320 <a href="gaeb-da11-datei.html" class="dropdown-link" role="menuitem">DA11 erklärt</a> 321 <a href="gaeb-x31-datei.html" class="dropdown-link" role="menuitem">GAEB X31 erklärt</a> 322 <a href="gaeb-datei.html" class="dropdown-link" role="menuitem">Was ist eine GAEB-Datei?</a> 323 <a href="gaeb-diff.html" class="dropdown-link" role="menuitem">GAEB-Formate im Vergleich</a> 324 <a href="gaeb-phasen.html" class="dropdown-link" role="menuitem">GAEB-Austauschphasen</a> 325 </div> 326 </div> 327 328 <div class="nav-item has-dropdown"> 329 <a href="#" class="nav-link">Service 330 <svg class="nav-caret" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 331 </a> 332 <div class="dropdown" role="menu"> 333 <a href="gaeb-release-2025.html" class="dropdown-link" role="menuitem">Aktuelle Updates 2025</a> 334 <a href="gaeb-release-2023.html" class="dropdown-link" role="menuitem">Download älterer Versionen</a> 335 <a href="gaeb-system.html" class="dropdown-link" role="menuitem">Systemvoraussetzungen</a> 336 <a href="gaeb-faq.html" class="dropdown-link" role="menuitem">Fragen und Antworten</a> 337 <a href="gaeb-schulung.html" class="dropdown-link" role="menuitem">Schulung per Video-Training</a> 338 <a href="gaeb-excel-konverter.html" class="dropdown-link" role="menuitem">Produktbeschreibungen (GAEB-Format)</a> 339 <a href="gaeb-presse.html" class="dropdown-link" role="menuitem">Pressemitteilungen</a> 340 </div> 341 </div> 342 343 </nav> 344 345 <!-- Aktionen Rechts --> 346 <div class="header-actions"> 347 <a href="gaeb-bestellung.html" class="btn btn-primary btn-sm">Kaufen</a> 348 <button class="theme-toggle" type="button" data-theme-toggle aria-pressed="false" aria-label="Dunkelmodus aktivieren"> 349 <svg class="icon-moon" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg> 350 <svg class="icon-sun" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41
350M17.66 6.34l1.41-1.41"/></svg> 351 </button> 352 <button class="nav-toggle" type="button" data-nav-toggle aria-label="Menü öffnen" aria-expanded="false" aria-controls="mobile-drawer"> 353 <svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/></svg> 354 </button> 355 </div> 356 357 </div> 358 </div> 359</header> 360 361<!-- ============ MOBILE DRAWER ============ --> 362<div class="mobile-backdrop" data-backdrop aria-hidden="true"></div> 363<aside class="mobile-drawer" id="mobile-drawer" data-drawer aria-hidden="true" aria-label="Mobile Navigation"> 364 <button class="mobile-drawer-close" type="button" data-drawer-close aria-label="Menü schlieÃen"> 365 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg> 366 </button> 367 <nav class="mobile-nav" aria-label="Mobile Hauptnavigation"> 368 <button type="button" data-mobile-sub="m-software" aria-expanded="false">Software 369 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 370 </button> 371 <div class="mobile-sub" id="m-software"> 372 <a href="gaeb-aktuell.html">GAEB-Online 2025 â Einzelplatz</a> 373 <a href="gaeb-online-usb.html">GAEB-Online 2025 â USB-Stick</a> 374 <a href="gaeb-preis-ts.html">GAEB-Online 2025 â Terminalserver</a> 375 <a href="gaeb-ki-preisnavigator.html">GAEB-KI-PreisNavigator</a> 376 <a href="gaeb-schulung.html">Schulung per Video-Training</a> 377 <a href="gaeb-produktbeschreibung.html">Produktbeschreibung</a> 378 </div> 379 <button type="button" data-mobile-sub="m-erweiterungen" aria-expanded="false">Erweiterungen 380 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 381 </button> 382 <div class="mobile-sub" id="m-erweiterungen"> 383 <a href="gaeb-efb-221-223.html">Excel EFB-Kalkulation</a> 384 <a href="gaeb-efb-ekt-detail.html">Excel EFB-EKT-Detail</a> 385 <a href="gaeb-efb-221-rueck.html">Excel EFB-Rückwärtskalkulation</a> 386 <a href="gaeb-excel-aufmass.html">Excel-Aufmaà XRechnung</a> 387 <a href="gaeb-x31-generator.html">GAEB-X31-Generator</a> 388 <a href="gaeb-excel-xrechnung.html">Excel Vorlage XRechnung</a> 389 <a href="gaeb-excel-lv-generator.html">Excel-LV-Generator <span class="free-badge">KOSTENLOS</span></a> 390 </div> 391 <button type="button" data-mobile-sub="m-funktionen" aria-expanded="false">Funktionen 392 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 393 </button> 394 <div class="mobile-sub" id="m-funktionen"> 395 <a href="gaeb-excel-gaeb.html">Excel in GAEB</a> 396 <a href="gaeb-excel.html">Export in Excel</a> 397 <a href="gaeb-excel-kalk.html">Kalkulation in Excel</a> 398 <a href="gaeb-ekt.html">Einzelkosten der Teilleistungen</a> 399 <a href="gaeb-da84.html">Export DA84</a> 400 <a href="gaeb-imp-da84.html">Import DA84</a> 401 <a href="gaeb-excel-aufmass.html">Aufmaà und Rechnung</a> 402 <a href="gaeb-excel-xrechnung.html">XRechnung</a> 403 <a href="gaeb-word.html">Export in Word</a> 404 <a href="gaeb-funktionen.html">Alle Funktionen</a> 405 </div> 406 <button type="button" data-mobile-sub="m-preise" aria-expanded="false">Preise 407 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 408 </button> 409 <div class="mobile-sub" id="m-preise"> 410 <a href="gaeb-preis.html">Preise â Einzelplatz</a> 411 <a href="gaeb-preis-usb.html">Preise â USB</a> 412 <a href="gaeb-preis-ts.html">Preise â Terminalserver</a> 413 <a href="gaeb-ueber.html">Preisliste</a> 414 </div> 415 <a href="gaeb-download.html">Download</a> 416 <a href="gaeb-ki-preisnavigator.html">GAEB-KI</a> 417 <button type="button" data-mobile-sub="m-wissen" aria-expanded="false">Wissen 418 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 419 </button> 420 <div class="mobile-sub" id="m-wissen"> 421 <a href="gaeb-wissen.html"><strong>Ãbersicht: GAEB-Wissen</strong></a> 422 <a href="gaeb-datei-oeffnen.html">GAEB-Datei öffnen</a> 423 <a href="gaeb-in-excel-umwandeln.html">GAEB in Excel umwandeln</a> 424 <a href="pdf-in-gaeb-umwandeln.html">PDF in GAEB umwandeln</a> 425 <a href="gaeb-x83-datei.html">X83-Datei erklärt</a> 426 <a href="gaeb-x84-datei.html">X84-Datei erklärt</a> 427 <a href="gaeb-d83-d84-erklaert.html">D83 & D84 erklärt</a> 428 <a href="gaeb-aufmass.html">Aufmaà im Bau (REB 23.003)</a> 429 <a href="gaeb-da11-datei.html">DA11 erklärt</a> 430 <a href="gaeb-x31-datei.html">GAEB X31 erklärt</a> 431 <a href="gaeb-datei.html">Was ist eine GAEB-Datei?</a> 432 <a href="gaeb-diff.html">GAEB-Formate im Vergleich</a> 433 <a href="gaeb-phasen.html">GAEB-Austauschphasen</a> 434 </div> 435 <button type="button" data-mobile-sub="m-service" aria-expanded="false">Service 436 <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="6 9 12 15 18 9"/></svg> 437 </button> 438 <div class="mobile-sub" id="m-service"> 439 <a href="gaeb-release-2025.html">Aktuelle Updates 2025</a> 440 <a href="gaeb-release-2023.html">Download älterer Versionen</a> 441 <a href="gaeb-system.html">Systemvoraussetzungen</a> 442 <a href="gaeb-faq.html">FAQ</a> 443 <a href="gaeb-schulung.html">Schulung</a> 444 <a href="gaeb-excel-konverter.html">Produktbeschreibungen (GAEB-Format)</a> 445 <a href="gaeb-presse.html">Pressemitteilungen</a> 446 </div> 447 <a href="gaeb-bestellung.html" class="btn btn-primary mt-4" style="justify-content:center">Jetzt kaufen</a> 448 </nav> 449</aside> 450 451<!-- ============ MAIN ============ --> 452<main id="main"> 453<section class="section section-tight"> 454 <div class="container"> 455 <h1>Sitemap â Alle Seiten von gaeb-online.de</h1> 456 <p class="lead">Eine Ãbersicht aller Seiten unserer Website nach Themen sortiert.</p> 457 </div> 458</section> 459 460<section class="section section-tight"> 461 <div class="container"> 462 <div class="sitemap-grid"> 463 464 <article class="sitemap-card"> 465 <h3>Produkte</h3> 466 <ul class="sitemap-list"> 467 <li><a href="gaeb-aktuell.html">GAEB-Online 2025 â Einzelplatz</a></li> 468 <li><a href="gaeb-online-usb.html">GAEB-Online 2025 â USB</a></li> 469 <li><a href="gaeb-preis-ts.html">GAEB-Online 2025 â Terminalserver</a></li> 470 <li><a href="gaeb-excel-aufmass.html">Excel-Aufmaà für GAEB-Online 2025</a></li> 471 <li>
471<a href="gaeb-excel-xrechnung.html">XRechnung für GAEB-Online 2025</a></li> 472 <li><a href="gaeb-efb-221-223.html">Excel-EFB 221/223 (Urkalkulation)</a></li> 473 <li><a href="gaeb-efb-221-rueck.html">Excel-EFB Rückwärtskalkulation</a></li> 474 <li><a href="gaeb-efb-ekt-detail.html">Excel EFB-EKT-Detail</a></li> 475 <li><a href="gaeb-x31-generator.html">GAEB-X31-Generator</a></li> 476 <li><a href="gaeb-wissen.html">GAEB-Wissen (Ratgeber-Ãbersicht)</a></li> 477 <li><a href="gaeb-excel-xrechnung.html">Excel-Vorlage für XRechnung</a></li> 478 <li><a href="gaeb-excel-lv-generator.html">Excel-LV-Generator (kostenlos)</a></li> 479 <li><a href="gaeb-ki-preisnavigator.html">KI-PreisNavigator</a></li> 480 <li><a href="gaeb-schulung.html">Schulung per Video-Training</a></li> 481 <li><a href="gaeb-ueber.html">Produktübersicht</a></li> 482 <li><a href="gaeb-produktbeschreibung.html">Produktbeschreibung</a></li> 483 <li><a href="gaeb-flyer.html">Produktflyer als PDF</a></li> 484 </ul> 485 </article> 486 487 <article class="sitemap-card"> 488 <h3>Funktionen</h3> 489 <ul class="sitemap-list"> 490 <li><a href="gaeb-neu.html">Neuerungen anzeigen</a></li> 491 <li><a href="gaeb-funktionen.html">FunktionsÂübersicht</a></li> 492 <li><a href="gaeb-excel-gaeb.html">Excel in GAEB konvertieren</a></li> 493 <li><a href="gaeb-excel.html">Export in Excel</a></li> 494 <li><a href="gaeb-excel-kalk.html">Kalkulation in Excel</a></li> 495 <li><a href="gaeb-ekt.html">Einzelkosten der Teilleistungen</a></li> 496 <li><a href="gaeb-excel-vorlagen.html">Freie Excel-Vorlagen</a></li> 497 <li><a href="gaeb-open.html">Export in OpenOffice</a></li> 498 <li><a href="gaeb-word.html">Export in Word</a></li> 499 <li><a href="gaeb-signatur.html">Angebote digital signieren</a></li> 500 <li><a href="gaeb-da84.html">Export DA84</a></li> 501 <li><a href="gaeb-imp-excel.html">Import Preise aus Excel</a></li> 502 <li><a href="gaeb-imp-da84.html">Import Preise aus DA84</a></li> 503 <li><a href="gaeb-imp-x94.html">Import Preise aus X94</a></li> 504 <li><a href="gaeb-excel-aufmass.html">Excel-Aufmaà XRechnung</a></li> 505 <li><a href="gaeb-excel-xrechnung.html">XRechnung</a></li> 506 <li><a href="gaeb-phasen.html">GAEB-Austauschphasen</a></li> 507 <li><a href="gaeb-datei.html">Was ist eine GAEB-Datei</a></li> 508 <li><a href="gaeb-konvertierung.html">Konverter für GAEB</a></li> 509 <li><a href="gaeb-xml.html">GAEB XML</a></li> 510 <li><a href="gaeb-diff.html">Unterschiede GAEB-Formate</a></li> 511 </ul> 512 </article> 513 514 <article class="sitemap-card"> 515 <h3>Preise & Kaufen</h3> 516 <ul class="sitemap-list"> 517 <li><a href="gaeb-preis.html">Preise â Einzelplatz</a></li> 518 <li><a href="gaeb-preis-usb.html">Preise â USB</a></li> 519 <li><a href="gaeb-preis-ts.html">Preise â Terminalserver</a></li> 520 <li><a href="gaeb-bestellung.html">Jetzt kaufen (Ãbersicht)</a></li> 521 <li><a href="gaeb-kaufen-direkt.html">Direkt online kaufen (Einzelplatz / USB)</a></li> 522 <li><a href="gaeb-kaufen-direkt-ts.html">Direkt online kaufen (Terminalserver)</a></li> 523 <li><a href="gaeb-kaufen-ki.html">KI-PreisNavigator testen oder buchen</a></li> 524 <li><a href="gaeb-kaufen.html">Per Rechnung / Vorkasse bestellen</a></li> 525 <li><a href="gaeb-order.html">Bestellformular</a></li> 526 <li><a href="gaeb-lieferzeit.html">Lieferzeit der Software</a></li> 527 </ul> 528 </article> 529 530 <article class="sitemap-card"> 531 <h3>Wissen & Ratgeber</h3> 532 <ul class="sitemap-list"> 533 <li><a href="gaeb-wissen.html">GAEB-Wissen (Ãbersicht)</a></li> 534 <li><a href="gaeb-in-excel-umwandeln.html">GAEB-Datei in Excel umwandeln</a></li> 535 <li><a href="pdf-in-gaeb-umwandeln.html">PDF in GAEB umwandeln</a></li> 536 <li><a href="gaeb-datei-oeffnen.html">GAEB-Datei öffnen</a></li> 537 <li><a href="gaeb-x83-datei.html">X83-Datei erklärt</a></li> 538 <li><a href="gaeb-x84-datei.html">X84-Datei erklärt</a></li> 539 <li><a href="gaeb-d83-d84-erklaert.html">D83 & D84 (GAEB 90) erklärt</a></li> 540 <li><a href="gaeb-excel-aufmass.html">Aufmaà im Bau erklärt (REB 23.003)</a></li> 541 <li><a href="gaeb-da11-datei.html">DA11 erklärt</a></li> 542 <li><a href="gaeb-x31-datei.html">GAEB X31 erklärt</a></li> 543 <li><a href="gaeb-datei.html">Was ist eine GAEB-Datei?</a></li> 544 <li><a href="gaeb-diff.html">GAEB-Formate im Vergleich</a></li> 545 </ul> 546 </article> 547 548 <article class="sitemap-card"> 549 <h3>Testen & Download</h3> 550 <ul class="sitemap-list"> 551 <li><a href="gaeb-download.html">Testversion herunterladen</a></li> 552 <li><a href="gaeb-load.html">Download-Ãbersicht</a></li> 553 <li><a href="gaeb-system.html">Systemvoraussetzungen</a></li> 554 <li><a href="gaeb-save.html">Signierter Download</a></li> 555 <li><a href="gaeb-macos.html">GAEB-Online auf Mac</a></li> 556 </ul> 557 </article> 558 559 <article class="sitemap-card"> 560 <h3>Service & Updates</h3> 561 <ul class="sitemap-list"> 562 <li><a href="gaeb-release-2025.html">Updates Version 2025</a></li> 563 <li><a href="gaeb-release-2023.html">Updates Version 2023</a></li> 564 <li><a href="gaeb-release-2021.html">Updates Version 2021</a></li> 565 <li><a href="gaeb-release-2018.html">Updates Version 2018</a></li> 566 <li><a href="gaeb-release-2016.html">Updates Version 2016</a></li> 567 <li><a href="gaeb-release-2014.html">Updates Version 2014</a></li> 568 <li><a href="gaeb-versionen.html">Alle Versionen</a></li> 569 <li><a href="gaeb-faq.html">FAQ â Fragen & Antworten</a></li> 570 <li><a href="gaeb-meinungen.html">
570KundenÂmeinungen</a></li> 571 <li><a href="gaeb-excel-konverter.html">ProduktÂbeschreibungen im GAEB-Format</a></li> 572 <li><a href="gaeb-presse.html">Pressemitteilungen</a></li> 573 </ul> 574 </article> 575 576 <article class="sitemap-card"> 577 <h3>Rechtliches</h3> 578 <ul class="sitemap-list"> 579 <li><a href="gaeb-impr.html">Impressum</a></li> 580 <li><a href="gaeb-agb.html">AGB</a></li> 581 <li><a href="gaeb-data.html">Datenschutz</a></li> 582 <li><a href="gaeb-dsgvo-einw.html">DSGVO-Einwilligung</a></li> 583 </ul> 584 </article> 585 586 <article class="sitemap-card"> 587 <h3>English Information</h3> 588 <ul class="sitemap-list"> 589 <li><a href="index-en.html">Main page</a></li> 590 <li><a href="gaeb-2025-en.html">New in GAEB-Online 2025</a></li> 591 <li><a href="gaeb-da84-en.html">Export DA84</a></li> 592 <li><a href="gaeb-excel-gaeb-en.html">Convert Excel to GAEB</a></li> 593 <li><a href="gaeb-ueber-en.html">Product overview</a></li> 594 <li><a href="gaeb-diff-en.html">Differences between GAEB formats</a></li> 595 <li><a href="gaeb-us.html">US information</a></li> 596 </ul> 597 </article> 598 599 </div> 600 </div> 601</section> 602 603<!-- FuÃzeile --> 604</main> 605 606<!-- ============ FOOTER ============ --> 607<footer class="site-footer" role="contentinfo"> 608 <div class="container"> 609 <div class="footer-grid"> 610 611 <div class="footer-col"> 612 <h2>Blog & Presse</h2> 613 <ul> 614 <li><a href="https://blog.gaeb-online.de/ki-kalkulation-gaeb-daten-im-unternehmen/" data-external>KI: Ihre Daten bleiben im Unternehmen</a></li> 615 <li><a href="https://blog.gaeb-online.de/" data-external>Unterschied EFB-Kalkulation und Rückwärtskalkulation</a></li> 616 <li><a href="https://blog.gaeb-online.de/" data-external>GAEB-Online 2025 vereinfacht die Angebotsbearbeitung mit Excel</a></li> 617 <li><a href="gaeb-presse.html">Alle Pressemitteilungen</a></li> 618 </ul> 619 </div> 620 621 <div class="footer-col footer-contact"> 622 <h2>Kontakt</h2> 623 <address> 624 <strong>gaeb-online, Ulrike Braun</strong><br> 625 KraichgaustraÃe 15<br> 626 75045 Walzbachtal/Jö<br> 627 Deutschland<br><br> 628 Telefon: <a href="tel:+4972033346506">+49 7203 346506</a><br> 629 E-Mail: <a href="mailto:[email protected]">[email protected]</a> 630 </address> 631 </div> 632 633 <div class="footer-col"> 634 <h2>Folgen Sie uns</h2> 635 <div class="footer-social"> 636 <a href="https://blog.gaeb-online.de/" data-external aria-label="gaeb-online Blog" title="Blog"> 637 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg> 638 </a> 639 <a href="https://www.youtube.com/@gaeb-online" data-external aria-label="YouTube-Kanal" title="YouTube"> 640 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19.08C5.12 19.54 12 19.54 12 19.54s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.33 29 29 0 0 0-.46-5.33z"/><polygon points="9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02"/></svg> 641 </a> 642 <a href="mailto:[email protected]" aria-label="E-Mail" title="E-Mail"> 643 <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"/><polyline points="22,6 12,13 2,6"/></svg> 644 </a> 645 </div> 646 <div class="mt-6"> 647 <h2>Ausgewählte Produkte</h2> 648 <ul> 649 <li><a href="gaeb-aktuell.html">GAEB-Online 2025</a></li> 650 <li><a href="gaeb-ki-preisnavigator.html">GAEB-KI-PreisNavigator</a></li> 651 <li><a href="gaeb-efb-221-223.html">Excel-EFB 221/223</a></li> 652 <li><a href="gaeb-excel-aufmass.html">Excel-Aufmaà XRechnung</a></li> 653 </ul> 654 <p class="footer-prod-version footer-version" hidden>Aktuelle Programmversion: <a href="gaeb-release-2025.html" data-site-version title="Zu den Releasenotes"></a></p> 655 </div> 656 </div> 657 658 </div> 659 660 <div class="footer-bottom"> 661 <div class="footer-copy"> 662 <img src="img/logo_footer.webp" alt="gaeb-online Logo" width="32" height="32" loading="lazy" decoding="async">
663 <span>© 2014-<span data-year>2026</span> gaeb-online, Ulrike Braun. MS-Excel® und MS-Word® sind eingetragene Warenzeichen der Microsoft Corporation. Alle Markennamen innerhalb dieser Website gehören ihren legitimen Besitzern. <span class="footer-version" hidden> · Aktuelle Version: <a href="gaeb-release-2025.html" data-site-version title="Zu den Releasenotes"></a></span></span> 664 </div> 665 <div class="footer-legal"> 666 <a href="gaeb-presse.html">Presse</a> 667 <a href="gaeb-faq.html">FAQ</a> 668 <a href="gaeb-impr.html">Impressum</a> 669 <a href="gaeb-agb.html">AGB</a> 670 <a href="gaeb-data.html">Datenschutz</a> 671 </div> 672 </div> 673 674 <div class="footer-disclaimer"> 675 Dieses Angebot richtet sich ausschlieÃlich an Unternehmer, juristische Personen des öffentlichen Rechts und öffentlich-rechtliche Sondervermögen. 676 Alle angegebenen Preise verstehen sich als Netto-Preise, zuzüglich der derzeit gültigen gesetzlichen Mehrwertsteuer. 677 Unsere Preise sind <strong>Einmalkaufpreise</strong> ohne laufende Gebühren. Der KI-PreisNavigator bildet eine Ausnahme und wird als Abonnement angeboten. 678 </div> 679 680 </div> 681</footer> 682 683<!-- ============ BACK TO TOP ============ --> 684<button class="to-top" type="button" data-to-top aria-label="Nach oben scrollen"> 685 <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="18 15 12 9 6 15"/></svg> 686</button> 687 688<!-- ============ JS ============ -->
689<script src="assets/app.js" defer></script>
689 690 691<!-- ============ APPLE-USER-HINWEIS-BANNER ============ 692 Schwebender Hinweis unten links für Mac/iOS-User: GAEB-Online 2025 693 läuft unter Windows; Hinweis auf Terminalserver/Parallels. 694 Position: unten links (Produktberater-/Chat-Pill ist unten rechts). 695 Auf Mobile zusätzlicher Abstand nach unten wegen pf-mobile-bar. 696 Dismiss-Klick wird in localStorage gemerkt â kommt nicht wieder. --> 697<style> 698 #apple-os-banner { 699 position: fixed; 700 left: 20px; 701 bottom: 20px; 702 z-index: 9995; /* unter dem pf-combo (max int), aber über normalem Content */ 703 max-width: 320px; 704 padding: 14px 38px 14px 16px; 705 background: var(--c-surface, #fff); 706 border: 1px solid var(--c-border, #e0e0e0); 707 border-left: 4px solid var(--c-brand, #0958b3); 708 border-radius: 8px; 709 box-shadow: 0 8px 24px rgba(0,0,0,0.12); 710 font: 13.5px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 711 color: var(--c-ink-2, #555); 712 } 713 #apple-os-banner p { margin: 0; } 714 #apple-os-banner strong { color: var(--c-ink, #1f1f1f); display: block; margin-bottom: 4px; font-size: 14px; } 715 #apple-os-banner a { color: var(--c-brand, #0958b3); font-weight: 600; text-decoration: none; white-space: nowrap; } 716 #apple-os-banner a:hover { text-decoration: underline; } 717 #apple-os-banner .apple-banner-close { 718 position: absolute; 719 top: 6px; 720 right: 8px; 721 background: transparent; 722 border: 0; 723 font-size: 22px; 724 line-height: 1; 725 cursor: pointer; 726 color: var(--c-ink-3, #999); 727 padding: 4px 8px; 728 border-radius: 4px; 729 } 730 #apple-os-banner .apple-banner-close:hover { color: var(--c-ink, #1f1f1f); background: var(--c-bg-2, #f5f5f5); } 731 @media (max-width: 640px) { 732 #apple-os-banner { 733 left: 12px; 734 right: 12px; 735 max-width: none; 736 bottom: 100px; /* über der pf-mobile-bar */ 737 } 738 } 739</style> 740<div id="apple-os-banner" hidden role="region" aria-label="Hinweis für Mac- und iOS-Nutzer"> 741 <button type="button" class="apple-banner-close" aria-label="Hinweis schlieÃen">×</button> 742 <p> 743 GAEB-Online 2025 läuft unter Windows. Hinweise zur Nutzung auf macOS finden Sie <a href="gaeb-macos.html">hier</a>. 744 </p> 745</div>
746<script> 747(function() { 748 try { 749 if (localStorage.getItem('appleOsBannerDismissed') === '1') return; 750 } catch (e) {} 751 var ua = navigator.userAgent || ''; 752 var isMac = /Macintosh|Mac OS X/i.test(ua); 753 var isIOS = /iPhone|iPad|iPod/i.test(ua); 754 var isIPadOS = /Macintosh/.test(ua) && (navigator.maxTouchPoints || 0) > 1; 755 if (!(isMac || isIOS || isIPadOS)) return; 756 var banner = document.getElementById('apple-os-banner'); 757 if (!banner) return; 758 banner.removeAttribute('hidden'); 759 function dismiss() { 760 banner.style.display = 'none'; 761 try { localStorage.setItem('appleOsBannerDismissed', '1'); } catch (e) {} 762 } 763 var btn = banner.querySelector('.apple-banner-close'); 764 if (btn) btn.addEventListener('click', dismiss); 765 // Auch wenn der Nutzer den Link klickt: Banner als gelesen markieren â 766 // beim Zurück-Navigieren erscheint er dann nicht wieder. 767 var lnk = banner.querySelector('a'); 768 if (lnk) lnk.addEventListener('click', dismiss); 769})(); 770</script>
770 771 772<!-- ============ FLOATING-PILL: PRODUKTBERATER ============ 773 Schwebender Button unten rechts, sichtbar auf Desktop UND Mobilgeraeten. 774 Wonderchat-Bubble bleibt daran angrenzend als eigenes Element sichtbar 775 (CORS verhindert programmatisches Oeffnen von Wonderchat mit einem Klick). --> 776<style> 777 .pf-combo { 778 position: fixed; 779 right: 20px; 780 bottom: 20px; 781 z-index: 2147483647; /* immer ueber Wonderchat / sonstigen Overlays */ 782 pointer-events: auto; 783 display: flex; 784 align-items: stretch; 785 background: var(--c-surface, #fff); 786 border: 1px solid var(--c-border, #e0e0e0); 787 border-radius: 999px; 788 box-shadow: 0 14px 36px rgba(0,0,0,0.22), 0 3px 10px rgba(0,0,0,0.10); 789 overflow: hidden; 790 font: 600 16px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 791 color: var(--c-ink, #1f1f1f); 792 } 793 .pf-combo-btn { 794 display: inline-flex; 795 align-items: center; 796 gap: 10px; 797 padding: 16px 24px; 798 background: transparent; 799 border: 0; 800 color: inherit; 801 cursor: pointer; 802 white-space: nowrap; 803 transition: background .15s ease, color .15s ease; 804 } 805 .pf-combo-btn:hover, 806 .pf-combo-btn:focus-visible { 807 background: rgba(17,104,166,0.09); 808 color: var(--c-primary, #1168a6); 809 outline: none; 810 } 811 .pf-combo-btn svg { 812 width: 26px; height: 26px; 813 color: var(--c-primary, #1168a6); 814 flex: 0 0 26px; 815 } 816 .pf-combo-sep { 817 width: 1px; 818 background: var(--c-border, #e0e0e0); 819 align-self: stretch; 820 flex: 0 0 1px; 821 } 822 .pf-combo-close { 823 display: inline-flex;
824 align-items: center; justify-content: center; 825 width: 32px; 826 background: transparent; 827 border: 0; 828 color: var(--c-ink-3, #888); 829 cursor: pointer; 830 font-size: 16px; 831 line-height: 1; 832 transition: background .15s ease, color .15s ease; 833 } 834 .pf-combo-close:hover, 835 .pf-combo-close:focus-visible { 836 background: rgba(0,0,0,0.06); 837 color: var(--c-ink, #111); 838 outline: none; 839 } 840 html[data-theme="dark"] .pf-combo-close { color: #a8a8a8; } 841 html[data-theme="dark"] .pf-combo-close:hover, 842 html[data-theme="dark"] .pf-combo-close:focus-visible { 843 background: rgba(255,255,255,0.08); 844 color: #f0f0f0; 845 } 846 /* Eingeklappt: nur das Kompass-Icon als kleiner Rand-Tab */ 847 .pf-combo.is-collapsed .pf-combo-btn span, 848 .pf-combo.is-collapsed .pf-combo-sep, 849 .pf-combo.is-collapsed .pf-combo-close { display: none; } 850 .pf-combo.is-collapsed .pf-combo-btn { padding: 14px; } 851 /* Dark-Mode */ 852 html[data-theme="dark"] .pf-combo { 853 background: #1f2937; 854 border-color: rgba(255,255,255,0.12); 855 color: #f0f0f0; 856 } 857 html[data-theme="dark"] .pf-combo-btn:hover, 858 html[data-theme="dark"] .pf-combo-btn:focus-visible { 859 background: rgba(90,170,255,0.15); 860 color: #5aa7ff; 861 } 862 html[data-theme="dark"] .pf-combo-btn svg { color: #5aa7ff; } 863 html[data-theme="dark"] .pf-combo-sep { background: rgba(255,255,255,0.12); } 864 /* Kleine Screens: kompakter, nur Icons */ 865 @media (max-width: 480px) { 866 .pf-combo { right: 12px; } 867 .pf-combo-btn { padding: 16px 18px; } 868 .pf-combo-btn span { display: none; } 869 } 870 @media print { .pf-combo { display: none !important; } } 871 872 /* ---------- Mobile Toolbox (nur ⤠640 px) ----------
873 Vollbreite Leiste am unteren Rand mit ZWEI gleich grossen Pill- 874 Buttons: links Produktberater, rechts Chat. Der Chat-Button triggert 875 per JS einen Klick auf den nativen Wonderchat-Launcher. Die native 876 Wonderchat-Bubble wird auf Mobilgeraeten versteckt (visibility:hidden), 877 ihre aufklappende iframe-Oberflaeche bleibt aber sichtbar 878 (visibility:visible Override unten). */ 879 .pf-mobile-bar { display: none; } 880 @media (max-width: 640px) { 881 .pf-combo { display: none !important; } 882 .to-top { display: none !important; } 883 .pf-mobile-bar { 884 position: fixed; 885 left: 0; right: 0; bottom: 0; 886 z-index: 9996; 887 display: flex; 888 align-items: stretch; 889 gap: 10px; 890 padding: 12px 14px; 891 padding-bottom: calc(12px + env(safe-area-inset-bottom)); 892 background: var(--c-surface, #ffffff); 893 border-top: 1px solid var(--c-border, #e0e0e0); 894 border-radius: 20px 20px 0 0; 895 box-shadow: 0 -8px 24px rgba(0,0,0,0.12); 896 font: 600 14px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; 897 color: var(--c-ink, #1f1f1f); 898 box-sizing: border-box; 899 } 900 .pf-mobile-bar .pf-mobile-btn { 901 flex: 1 1 0; 902 min-width: 0; 903 display: inline-flex; 904 align-items: center; 905 justify-content: center; 906 gap: 8px; 907 padding: 14px 12px; 908 background: var(--c-primary, #1168a6); 909 color: #fff; 910 border: 0; 911 border-radius: 999px; 912 cursor: pointer; 913 font: inherit; 914 white-space: nowrap; 915 -webkit-tap-highlight-color: rgba(0,0,0,0.15); 916 } 917 .pf-mobile-bar .pf-mobile-btn:active { opacity: 0.85; } 918 .pf-mobile-bar .pf-mobile-btn svg { 919 width: 18px; height: 18px; 920 color: #fff; 921 flex: 0 0 18px; 922 } 923 html[data-theme="dark"] .pf-mobile-bar { 924 background: #1f2937; 925 border-color: rgba(255,255,255,0.12); 926 color: #f0f0f0; 927 } 928 /* Seiten brauchen unten Platz, damit Inhalte nicht hinter der Leiste verschwinden */ 929 body { padding-bottom: calc(96px + env(safe-area-inset-bottom)); } 930 } 931 @media print { .pf-mobile-bar { display: none !important; } } 932 933 /* Sicherheitsnetz: wenn unser eigener Toggle den Chat schliessen will, 934 aber die Wonderchat-SDK toggleChat(false) ignoriert, blenden wir das 935 Wonderchat-iframe und seine bekannten Container per CSS aus. */ 936 body.pf-wc-closed iframe[src*="wonderchat"], 937 body.pf-wc-closed iframe[src*="app.wonderchat.io"], 938 body.pf-wc-closed iframe[id*="wonderchat" i], 939 body.pf-wc-closed iframe[name*="wonderchat" i], 940 body.pf-wc-closed iframe[title*="wonderchat" i], 941 body.pf-wc-closed div[id^="wonderchat"], 942 body.pf-wc-closed div[id*="wonderchat-window"], 943 body.pf-wc-closed div[id*="wonderchat-frame"], 944 body.pf-wc-closed div[class*="wonderchat" i] { 945 display: none !important; 946 visibility: hidden !important; 947 pointer-events: none !important; 948 } 949 /* Mobile-Toolbox bleibt natuerlich klickbar */ 950 .pf-mobile-bar { z-index: 2147483647; pointer-events: auto; } 951</style>
952<script> 953 (function () { 954 var lang = (document.documentElement.getAttribute('lang') || 'de').toLowerCase(); 955 if (lang.indexOf('de') !== 0) return; // nur DE 956 if (typeof window === 'undefined') return; 957 958 function build() { 959 if (document.getElementById('pfCombo')) return; 960 document.body.classList.add('pf-combo-active'); 961 962 var el = document.createElement('div'); 963 el.id = 'pfCombo'; 964 el.className = 'pf-combo'; 965 el.setAttribute('role', 'group'); 966 el.setAttribute('aria-label', 'Produktberater'); 967 el.innerHTML = 968 '<button type="button" class="pf-combo-btn" id="pfComboAdvisor" aria-haspopup="dialog" title="Produktberater starten">' + 969 '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">' + 970 '<circle cx="12" cy="12" r="10"/>' + 971 '<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>' + 972 '</svg>' + 973 '<span>Produktberater</span>' + 974 '</button>' + 975 '<span class="pf-combo-sep" aria-hidden="true"></span>' + 976 '<button type="button" class="pf-combo-btn" id="pfComboChat" aria-haspopup="dialog" title="Chat starten">' + 977 '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">' + 978 '<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z"/>' + 979 '</svg>' + 980 '<span>Sie haben eine Frage?</span>' + 981 '</button>' + 982 '<span class="pf-combo-sep" aria-hidden="true"></span>' + 983 '<button type="button" class="pf-combo-close" id="pfComboClose" aria-label="Label ausblenden" title="Einklappen">✕</button>'; 984 document.body.appendChild(el); 985 986 // Zustand aus sessionStorage wiederherstellen (eingeklappt oder voll)
987 try { 988 if (sessionStorage.getItem('pfComboCollapsed') === '1') { 989 el.classList.add('is-collapsed'); 990 } 991 } catch (e) {} 992 993 document.getElementById('pfComboAdvisor').addEventListener('click', function () { 994 if (typeof window.pfOpen === 'function') window.pfOpen(); 995 }); 996 document.getElementById('pfComboChat').addEventListener('click', function () { 997 openWonderchatWidget(); 998 }); 999 document.getElementById('pfComboClose').addEventListener('click', function (ev) { 1000 ev.stopPropagation(); 1001 el.classList.add('is-collapsed'); 1002 try { sessionStorage.setItem('pfComboCollapsed', '1'); } catch (e) {} 1003 }); 1004 1005 // Mobile-Toolbox zusaetzlich bauen (CSS blendet sie >640px wieder aus). 1006 // Zwei gleich grosse Pill-Buttons: Produktberater + Chat. Der Chat- 1007 // Button triggert programmatisch die native Wonderchat-Bubble, die 1008 // per CSS auf Mobilgeraeten versteckt ist. 1009 if (!document.getElementById('pfMobileBar')) { 1010 var bar = document.createElement('div'); 1011 bar.id = 'pfMobileBar'; 1012 bar.className = 'pf-mobile-bar'; 1013 bar.setAttribute('role', 'group'); 1014 bar.setAttribute('aria-label', 'Produktberater und Chat'); 1015 bar.innerHTML = 1016 '<button type="button" class="pf-mobile-btn" id="pfMobileAdvisor" aria-haspopup="dialog" title="Produktberater starten">' + 1017 '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">' + 1018 '<circle cx="12" cy="12" r="10"/>' + 1019 '<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>' + 1020 '</svg>' + 1021 '<span>Produktberater</span>' + 1022 '</button>' + 1023 '<button type="button" class="pf-mobile-btn" id="pfMobileChat" aria-haspopup="dialog" title="Chat starten">' + 1024 '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">' + 1025 '<path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2Z"/>' + 1026 '</svg>' + 1027 '<span>Chat</span>' + 1028 '</button>'; 1029 document.body.appendChild(bar); 1030 document.getElementById('pfMobileAdvisor').addEventListener('click', function () { 1031 if (typeof window.pfOpen === 'function') window.pfOpen(); 1032 }); 1033 document.getElementById('pfMobileChat').addEventListener('click', function () { 1034 openWonderchatWidget(); 1035 }); 1036 } 1037 } 1038 1039 // ---------- Wonderchat-Integration ---------- 1040 // Native Bubble ist via data-hidden=true (siehe assets/tracking.js) 1041 // komplett ausgeblendet. Chat wird nur ueber unsere eigenen Buttons 1042 // gesteuert. Da der Wonderchat-SDK keinen verlaesslichen Auto-Toggle 1043 // ohne Argument hat, tracken wir den Status selbst: erstes Mal true 1044 // (oeffnen), zweites Mal false (schliessen), usw. 1045 // Das Wonderchat-Panel selbst hat kein eigenes X â die Pille ist als 1046 // bottom/right positioniert und liegt damit unterhalb des Chat-Panels 1047 // und bleibt klickbar. 1048 // Da das Widget lazy geladen wird (tracking.js nach 1. Interaktion oder 1049 // 7s), kann window.wonderchat beim ersten Klick noch nicht da sein â 1050 // dann kurz nachpollen. 1051 window.__pfChatOpen = false; 1052 function openWonderchatWidget() { 1053 var triesLeft = 60; // ~6s Gnadenfrist 1054 (function tryToggle() { 1055 try { 1056 if (window.wonderchat && typeof window.wonderchat.toggleChat === 'function') { 1057 var nextState = !window.__pfChatOpen; 1058 console.log('[pf-chat] toggleChat(' + nextState + ') â war:', window.__pfChatOpen); 1059 window.wonderchat.toggleChat(nextState); 1060 if (nextState) { 1061 document.body.classList.remove('pf-wc-closed'); 1062 } else { 1063 document.body.classList.add('pf-wc-closed'); 1064 } 1065 window.__pfChatOpen = nextState; 1066 return; 1067 } 1068 } catch (e) { 1069 console.warn('[pf-chat] toggleChat-Fehler:', e); 1070 } 1071 if (--triesLeft > 0) setTimeout(tryToggle, 100); 1072 else { 1073 console.warn('[pf-chat] window.wonderchat ist nach 6s nicht verfuegbar'); 1074 // Sichtbarer Fallback: Kontakt-Optionen einblenden 1075 alert('Der Chat konnte nicht geladen werden.\n\nBitte pruefen Sie einen aktiven Adblocker oder Tracking-Schutz und versuchen es erneut.\n\nAlternativ erreichen Sie uns unter:\[email protected]\n+49 7203 346506'); 1076 } 1077 })(); 1078 } 1079 1080 if (document.readyState === 'loading') { 1081 document.addEventListener('DOMContentLoaded', build); 1082 } else { 1083 build(); 1084 } 1085 })();
1086</script>
1086 1087 1088<!-- ============ PRODUKTBERATER-MODAL (global) ============ --> 1089<div class="pf-backdrop" id="pfBackdrop" role="dialog" aria-modal="true" aria-labelledby="pfTitle"> 1090 <div class="pf-modal"> 1091 <div class="pf-head"> 1092 <div class="pf-progress-wrap"> 1093 <div class="pf-progress-label">Schritt <span id="pfStepNum">1</span> von 3</div> 1094 <div class="pf-progress-bar"><div class="pf-progress-fill" id="pfProgress" style="width:33%"></div></div> 1095 </div> 1096 <button type="button" class="pf-close" onclick="pfClose()" aria-label="Produktberater schlieÃen">✕</button> 1097 </div> 1098 <div class="pf-body" id="pfBody" aria-live="polite"></div> 1099 1100 <!-- Checkout-Shell: wird im Schritt âWarenkorb & Bezahlung" eingeblendet. 1101 WICHTIG: Die FastSpring-SBL sucht beim Seitenstart EINMALIG nach 1102 #fsc-embedded-checkout-container. Der Container muss daher von Beginn 1103 an im DOM vorhanden sein, auch wenn er noch unsichtbar ist, sonst 1104 bleibt das Checkout-Fenster beim zweiten Ãffnen leer. --> 1105 <div class="pf-checkout-shell" id="pfCheckoutShell" hidden> 1106 <div class="pf-checkout-head"> 1107 <h2 id="pfCheckoutTitle">Ihre Bestellung — sicher bezahlen</h2> 1108 <p class="pf-sub" id="pfCheckoutSub">Folgende Produkte werden in den Warenkorb gelegt. Den Kauf wickeln wir über unseren Zahlungsdienstleister <strong>FastSpring</strong> ab.</p> 1109 <ul class="pf-checkout-items" id="pfCheckoutItems"></ul> 1110 </div> 1111 <div id="fsc-embedded-checkout-container" class="pf-checkout-frame"></div> 1112 </div> 1113 1114 <div class="pf-foot"> 1115 <button type="button" class="pf-btn" id="pfBack" onclick="pfBack()" style="visibility:hidden">← Zurück</button> 1116 <button type="button" class="pf-btn" onclick="pfClose()">Abbrechen</button> 1117 </div> 1118 </div> 1119</div> 1120 1121<!-- ============ EOL-DOWNLOAD-MODAL (global) ============ 1122 Wird angezeigt, wenn Besucher auf Release-Seiten (2014/2016/2018/2021) 1123 ein abgekündigtes Setup herunterladen wollen. 1124 Die Logik steckt in assets/app.js â window.confirmDownloadOld(link). --> 1125<div class="eol-backdrop" id="eolBackdrop" role="dialog" aria-modal="true" aria-labelledby="eolTitle" aria-describedby="eolBody"> 1126 <div class="eol-modal" role="document"> 1127 <button type="button" class="eol-close" id="eolCloseX" aria-label="Dialog schlieÃen">✕</button> 1128 <div class="eol-icon" aria-hidden="true"> 1129 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 1130 <path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0Z"/> 1131 <line x1="12" y1="9" x2="12" y2="13"/> 1132 <line x1="12" y1="17" x2="12.01" y2="17"/> 1133 </svg> 1134 </div> 1135 <h2 id="eolTitle">Achtung: Abgekündigte Version!</h2> 1136 <p id="eolBody" class="eol-text">Diese Version ist abgekündigt (EOL) und wird nicht mehr unterstützt. Möchten Sie diese trotzdem laden?</p> 1137 <div class="eol-ctas"> 1138 <button type="button" class="btn btn-secondary" id="eolNo">Nein, abbrechen</button> 1139 <button type="button" class="btn btn-primary" id="eolYes">Ja, trotzdem laden</button> 1140 </div> 1141 </div> 1142</div> 1143 1144<!-- ============ DEMO-DOWNLOAD-MODAL (global) ============ 1145 Wird angezeigt, wenn Besucher die 14-Tage-Demoversion Excel-Aufmaà XRechnung laden. 1146 Die Logik steckt in assets/app.js â window.confirmDemoDownload(link). --> 1147<div class="eol-backdrop" id="demoBackdrop" role="dialog" aria-modal="true" aria-labelledby="demoTitle" aria-describedby="demoBody"> 1148 <div class="eol-modal" role="document"> 1149 <button type="button" class="eol-close" id="demoCloseX" aria-label="Dialog schlieÃen">✕</button> 1150 <div class="eol-icon" aria-hidden="true"> 1151 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 1152 <path d="M9 12l2 2 4-4"/> 1153 <circle cx="12" cy="12" r="10"/> 1154 </svg> 1155 </div> 1156 <h2 id="demoTitle">Digital signierte Demoversion</h2> 1157 <p id="demoBody" class="eol-text">Diese Demoversion ist von uns <strong>digital signiert</strong> und frei von Schadsoftware.<br><br>Sollte Ihr Virenscanner sie fälschlicherweise als Bedrohung melden, legen Sie bitte eine Ausnahme im Virenscanner an – oder verzichten Sie auf den Download.</p> 1158 <div class="eol-ctas"> 1159 <button type="button" class="btn btn-secondary" id="demoNo">Abbrechen</button> 1160 <button type="button" class="btn btn-primary" id="demoYes">Download starten</button> 1161 </div> 1162 </div> 1163</div> 1164 1165<!-- ============ KAUF-ZWISCHENDIALOG (Systemumstellung 20.04.2026 â 23.05.2026) ============ 1166 Wird vor dem Klick auf âKauf auf Rechnung" (â gaeb-kaufen.html) eingeblendet. 1167 Logik in assets/app.js â window.confirmKauf(link). AuÃerhalb des Zeitraums 1168 wird der Dialog übersprungen und der Link folgt direkt dem href. --> 1169<div class="kauf-backdrop" id="kaufBackdrop" role="dialog" aria-modal="true" aria-labelledby="kaufTitle"> 1170 <div class="kauf-modal" role="document"> 1171 <button type="button" class="kauf-close" id="kaufCloseX" aria-label="Dialog schlieÃen">✕</button> 1172 1173 <!-- Ansicht 1: Hinweis + Auswahl Rechnung / FastSpring --> 1174 <div class="kauf-view" id="kaufViewNotice"> 1175 <div class="kauf-icon" aria-hidden="true"> 1176 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 1177 <circle cx="12" cy="12" r="10"/> 1178 <line x1="12" y1="8" x2="12" y2="12"/>
1179 <line x1="12" y1="16" x2="12.01" y2="16"/> 1180 </svg> 1181 </div> 1182 <h2 id="kaufTitle">Hinweis zur Zahlungsabwicklung</h2> 1183 <p class="kauf-sub"><strong>Gültig vom 23.04.2026 bis 23.05.2026</strong></p> 1184 <p class="kauf-text">Aufgrund einer Systemumstellung können Zahlungen (Rechnung / Vorkasse) nur täglich <strong>nach 20 Uhr</strong> geprüft und bearbeitet werden. Wenn Sie Ihre Lizenzen schneller benötigen, nutzen Sie bitte den Kauf über unseren Partner <strong>FastSpring</strong>.</p> 1185 <div class="kauf-ctas"> 1186 <button type="button" class="btn btn-secondary" id="kaufGoInvoice">Weiter per Rechnung</button> 1187 <button type="button" class="btn btn-primary" id="kaufGoFs">Weiter zu FastSpring</button> 1188 </div> 1189 </div> 1190 1191 <!-- Ansicht 1b (nur KI-Test): Anzahl Arbeitsplätze abfragen --> 1192 <div class="kauf-view" id="kaufViewQty" hidden> 1193 <h2>Wie viele Arbeitsplätze möchten Sie testen?</h2> 1194 <p class="kauf-sub">Wählen Sie, für wie viele <strong>GAEB-Online 2025 Arbeitsplätze</strong> Sie den KI-PreisNavigator testen oder buchen möchten. Sie können die Anzahl später jederzeit anpassen.</p> 1195 <div class="pf-qty-panel" role="group" aria-label="Anzahl Arbeitsplätze" 1196 style="display:flex;justify-content:center;align-items:center;gap:12px;margin:22px 0 8px;"> 1197 <button type="button" id="kaufQtyMinus" class="pf-qty-btn" aria-label="Ein Arbeitsplatz weniger" 1198 style="width:48px;height:48px;font-size:22px;border-radius:8px;border:1px solid var(--c-border,#ccc);background:var(--c-surface,#fff);cursor:pointer;font-weight:600;">−</button> 1199 <input type="number" id="kaufQty" class="pf-qty-input" min="1" max="99" step="1" value="1" inputmode="numeric" aria-label="Anzahl Arbeitsplätze" 1200 style="width:88px;height:48px;text-align:center;font-size:20px;font-weight:600;border-radius:8px;border:1px solid var(--c-border,#ccc);background:var(--c-surface,#fff);color:var(--c-text,#222);"> 1201 <button type="button" id="kaufQtyPlus" class="pf-qty-btn" aria-label="Ein Arbeitsplatz mehr" 1202 style="width:48px;height:48px;font-size:22px;border-radius:8px;border:1px solid var(--c-border,#ccc);background:var(--c-surface,#fff);cursor:pointer;font-weight:600;">+</button> 1203 </div> 1204 <p class="kauf-sub" style="text-align:center;margin-top:0;font-size:13px;opacity:.75;">1 bis 99 Arbeitsplätze · 25 ⬠netto/Monat je Arbeitsplatz</p> 1205 <div class="kauf-ctas"> 1206 <button type="button" class="btn btn-secondary" id="kaufQtyCancel">Abbrechen</button> 1207 <button type="button" class="btn btn-primary" id="kaufQtyGo">Weiter</button> 1208 </div> 1209 </div> 1210 1211 <!-- Ansicht 2: Bestätigung vor Weiterleitung zu FastSpring --> 1212 <div class="kauf-view" id="kaufViewConfirm" hidden> 1213 <h2>Bestätigung vor FastSpring</h2> 1214 <p class="kauf-sub">Vor der Weiterleitung zu unserem Zahlungsdienstleister <strong>FastSpring</strong> bestätigen Sie bitte:</p> 1215 <div class="pf-confirm-list"> 1216 <label class="pf-confirm-item"> 1217 <input type="checkbox" class="kauf-cb" data-key="unternehmer"> 1218 <span>Mit dem Kauf bestätige ich, dass ich Unternehmer, juristische Person des öffentlichen Rechts oder öffentlich-rechtliches Sondervermögen bin.</span> 1219 </label> 1220 <label class="pf-confirm-item"> 1221 <input type="checkbox" class="kauf-cb" data-key="agb-system"> 1222 <span>Ich akzeptiere die <a href="gaeb-agb.html" target="_blank" rel="noopener">AGB</a> und habe die <a href="gaeb-system.html" target="_blank" rel="noopener">Systemvoraussetzungen</a> zur Kenntnis genommen.</span> 1223 </label> 1224 <!-- TS-Zusatz-Bestätigungen: werden von assets/app.js â confirmTsFastspring() 1225 per [hidden] eingeblendet, wenn der Direkt-Kauf auf gaeb-preis-ts.html 1226 über den Bestätigungsdialog läuft. --> 1227 <label class="pf-confirm-item kauf-ts-only" hidden> 1228 <input type="checkbox" class="kauf-cb kauf-cb-ts" data-key="ts-rds">
1229 <span>Ich bin mir bewusst, dass diese Ausführung des Programms ausschlieÃlich auf einem <strong>Microsoft Windows Terminalserver</strong> mit den <strong>Microsoft Windows Remote Desktop Services (RDS)</strong> über <strong>RDP (Remote Desktop Protocol)</strong> verwendet werden kann. Diese Version ist nicht kompatibel mit einem herkömmlichen Windows Server.</span> 1230 </label> 1231 <label class="pf-confirm-item kauf-ts-only" hidden> 1232 <input type="checkbox" class="kauf-cb kauf-cb-ts" data-key="ts-umwandlung"> 1233 <span>Ich nehme zur Kenntnis, dass die <strong>Umwandlung in Einzelplatzlizenzen</strong> – bei fehlendem Terminalserver – <strong>100 EUR zzgl. MwSt.</strong> kostet und nur in der Anzahl der ursprünglich gekauften Nutzerlizenzen möglich ist.</span> 1234 </label> 1235 <!-- KI-PreisNavigator-Zusatz: DSGVO-Einwilligung in die Lizenzüberwachung 1236 (max. 1 Jahr, Widerruf jederzeit möglich). Wird von confirmKiTest() in 1237 assets/app.js per [hidden] eingeblendet. --> 1238 <label class="pf-confirm-item kauf-ki-only" hidden> 1239 <input type="checkbox" class="kauf-cb kauf-cb-ki" data-key="ki-dsgvo"> 1240 <span>Ich willige gemäà Art. 7 DSGVO in die Verarbeitung der in der <a href="gaeb-dsgvo-einw.html" target="_blank" rel="noopener">Einwilligungserklärung</a> angegebenen personenbezogenen Daten zur <strong>Lizenzüberwachung des KI-PreisNavigators</strong> für maximal ein Jahr ein. Der Widerruf dieser Einwilligung ist jederzeit mit Wirkung für die Zukunft möglich.</span> 1241 </label> 1242 </div> 1243 <div class="kauf-ctas"> 1244 <button type="button" class="btn btn-secondary" id="kaufBack">← Zurück</button> 1245 <button type="button" class="btn btn-primary" id="kaufConfirmGo" disabled>Weiter zu FastSpring</button> 1246 </div> 1247 <p class="kauf-fallback">Ohne Bestätigung beider Punkte ist keine Weiterleitung an FastSpring möglich.</p> 1248 </div> 1249 </div> 1250</div> 1251 1252<!-- Lazy-Load-Tracker (Cookie-Consent + Chat) â lädt erst nach 1. Interaktion -->
1253<script src="assets/tracking.js" defer></script>
1253 1254 1255<!-- FastSpring Store Builder Library (Popup-Checkout für Produktberater) --> 1256<!-- data-debug="true" schreibt FS-Diagnoseausgaben in die Konsole; nach Test entfernen -->
1257<script id="fsc-api" 1258 src="https://sbl.onfastspring.com/sbl/1.0.5/fastspring-builder.min.js" 1259 type="text/javascript" 1260 data-storefront="gaebonline.onfastspring.com/embedded-go" 1261 data-debug="true" 1262 data-error-callback="fsErrorCallback" 1263 defer></script>
vendor: 2 bytes, line 1263
1263
1264<script> 1265 // Wird von FastSpring-SBL bei Fehlern aufgerufen (z. B. ungültiger Produktpfad, 1266 // Netzwerkfehler beim Checkout, Service-Ausfall). Phase-1-Absicherung: 1267 // - Plausible-Event "cart-checkout-error" senden 1268 // - User-sichtbarer Toast einblenden mit Hinweis auf Alternativen 1269 window.fsErrorCallback = function (msg) { 1270 console.error('[FastSpring-Error]', msg); 1271 // Bot-Filter: Crawler/Preview-Tools können nicht kaufen, ihre 403er von 1272 // FastSpring sind reines Hintergrundrauschen. Komplett ignorieren â kein 1273 // Plausible-Event, kein Logfile-Eintrag. 1274 try { 1275 var ua = (navigator.userAgent || '').toLowerCase(); 1276 if (/bot|crawl|spider|preview-tool|headlesschrome|pingdom|lighthouse|googleother|petal|bingpreview|chrome-lighthouse|gptbot|claude-?web|perplexity|yandex|baidu|duckduck|semrush|ahrefs|mj12bot|dotbot|seznambot|applebot|facebookexternalhit|twitterbot|whatsapp|telegrambot|slackbot|discordbot|yeti|naver|sogou|coccoc|360spider|qwantify|exabot|archive\.org_bot|crawler-jp|yahoo!\s*slurp|barkrowler|serpstatbot|linguee|opensiteexplorer/.test(ua)) { 1277 return; 1278 } 1279 } catch (e) {} 1280 // FastSpring-Noise filtern: leere/falsy Meldungen (z.B. 0) sind keine echten 1281 // Checkout-Fehler, sondern Init-Geräusch der SBL â nicht in Plausible-Goal 1282 // zählen, damit die Statistik aussagekräftig bleibt. 1283 // 403 = FastSpring-CDN blockt Datacenter-/Bot-IPs (sehen wir nur bei Scraper- 1284 // Schwärmen, nie bei echten Käufern) â ebenfalls Noise. 1285 // 204 = FastSpring-interner Init-Status (z.B. Order-Number ready bei Bots) â 1286 // taucht praktisch nur bei Crawlern auf, nie bei echten Kaufversuchen. 1287 var isNoise = (msg === 0 || msg === '0' || msg === '' || msg == null || msg === false 1288 || msg === 403 || msg === '403' 1289 || msg === 204 || msg === '204'); 1290 // Diagnose-Anreicherung: Typ + stringifizierte msg 1291 var msgType = (msg === null) ? 'null' : typeof msg; 1292 var msgStr; 1293 try { 1294 if (msg === null || msg === undefined) msgStr = '[' + msgType + ']'; 1295 else if (typeof msg === 'object') msgStr = JSON.stringify(msg); 1296 else msgStr = String(msg); 1297 } catch (e) { msgStr = '[unstringifiable]'; } 1298 if (msgStr && msgStr.length > 500) msgStr = msgStr.slice(0, 500) + 'â¦'; 1299 // SBL-Ready-Status: hilft zu unterscheiden, ob's beim Init oder beim 1300 // aktiven Checkout knallt 1301 var sblReady = !!(window.fastspring && window.fastspring.builder 1302 && typeof window.fastspring.builder.push === 'function'); 1303 // Bei Noise: weder Plausible noch Logger â sauberer Log = sofortiges Signal 1304 // bei echten Problemen. 1305 if (isNoise) return; 1306 try { 1307 if (window.plausible) { 1308 window.plausible('cart-checkout-error', { props: { msg: msgStr.slice(0, 120), type: msgType } }); 1309 } 1310 } catch (e) {} 1311 try { 1312 var src = 'fs:' + msgType + (sblReady ? ':ready' : ':init'); 1313 var body = 'msg=' + encodeURIComponent(msgStr || '[empty]') 1314 + '&page=' + encodeURIComponent(String(location.pathname + location.search).slice(0, 200)) 1315 + '&src=' + encodeURIComponent(src); 1316 fetch('gaeb-log-cart-error.php', { 1317 method: 'POST', 1318 headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, 1319 body: body, 1320 keepalive: true, 1321 credentials: 'same-origin' 1322 }); 1323 } catch (e) {} 1324 try { 1325 // Toast nur einmal anlegen 1326 if (document.getElementById('fsErrorToast')) return; 1327 var t = document.createElement('div'); 1328 t.id = 'fsErrorToast'; 1329 t.setAttribute('role', 'alert'); 1330 t.style.cssText = [ 1331 'position:fixed', 'left:50%', 'bottom:24px', 'transform:translateX(-50%)', 1332 'z-index:2147483646', 'max-width:520px', 'padding:14px 18px', 1333 'background:#fff', 'color:#1f2937', 'border:1px solid #d97706', 1334 'border-left:5px solid #d97706', 'border-radius:8px', 1335 'box-shadow:0 10px 30px rgba(0,0,0,.18)', 'font:600 14px/1.45 -apple-system,Segoe UI,Roboto,sans-serif' 1336 ].join(';'); 1337 t.innerHTML = 1338 '<div style="display:flex;gap:10px;align-items:flex-start;">' + 1339 '<div style="flex:1;min-width:0;">
1339' + 1340 '<div style="font-weight:700;margin-bottom:4px;">Beim Checkout ist ein Fehler aufgetreten</div>' + 1341 '<div style="font-weight:400;color:#374151;">Bitte versuchen Sie es in einem Moment erneut. Alternativ können Sie ' + 1342 '<a href="gaeb-kaufen.html" style="color:#1168a6;font-weight:600;">per Rechnung bestellen</a> ' + 1343 'oder uns an <a href="mailto:[email protected]?subject=Checkout-Fehler" style="color:#1168a6;font-weight:600;">[email protected]</a> schreiben.' + 1344 '</div>' + 1345 '</div>' + 1346 '<button type="button" aria-label="SchlieÃen" style="background:transparent;border:0;color:#6b7280;cursor:pointer;font-size:18px;line-height:1;padding:0 0 0 4px;">✕</button>' + 1347 '</div>'; 1348 var html = document.documentElement; 1349 if (html && html.getAttribute('data-theme') === 'dark') { 1350 t.style.background = '#1f2937'; 1351 t.style.color = '#f0f0f0'; 1352 t.style.borderColor = '#d97706'; 1353 } 1354 document.body.appendChild(t); 1355 t.querySelector('button').addEventListener('click', function () { t.remove(); }); 1356 setTimeout(function () { if (t.parentNode) t.remove(); }, 12000); 1357 } catch (e) {} 1358 }; 1359</script>
1359 1360 1361<!-- Produktberater-Modal -->
1362<script src="assets/produktberater.js" defer></script>
1362 1363 1364<!-- ============ LIVE-VERSIONSANZEIGE (Footer) ============ 1365 Holt /download/version.txt (Format: VERSION|URL) und blendet "Aktuelle 1366 Version: X.X.X.X" mit Link auf gaeb-release-2025.html ein. Cached pro 1367 Browser-Tab via sessionStorage, scheitert lautlos bei Netzwerk-Problemen. -->
1368<script> 1369(function () { 1370 function showVersion(v) { 1371 if (!v || !/^[\d.]+$/.test(v)) return; 1372 // Alle Elemente mit data-site-version befüllen (Multi-Spot-Support) 1373 var slots = document.querySelectorAll('[data-site-version]'); 1374 for (var i = 0; i < slots.length; i++) { 1375 slots[i].textContent = v; 1376 } 1377 // Alle Wrapper mit .footer-version sichtbar machen 1378 var wraps = document.querySelectorAll('.footer-version'); 1379 for (var j = 0; j < wraps.length; j++) { 1380 wraps[j].hidden = false; 1381 } 1382 } 1383 1384 // Kurzlebiger sessionStorage-Cache (5 Min) â schneller bei Navigation, 1385 // aber neue Releases werden trotzdem zeitnah sichtbar. 1386 var CACHE_TTL_MS = 5 * 60 * 1000; 1387 try { 1388 var raw = sessionStorage.getItem('siteVersion'); 1389 if (raw) { 1390 var obj = JSON.parse(raw); 1391 if (obj && obj.v && obj.t && (Date.now() - obj.t) < CACHE_TTL_MS) { 1392 showVersion(obj.v); 1393 return; 1394 } 1395 } 1396 } catch (e) {} 1397 1398 function tryFetch() { 1399 // cache: 'no-cache' erzwingt Server-Revalidierung (304-Antwort bei 1400 // unverändertem File ist trotzdem schnell, aber neuer Inhalt wird 1401 // sofort übernommen). 1402 fetch('download/version.txt', { cache: 'no-cache' }) 1403 .then(function (r) { return r.ok ? r.text() : null; }) 1404 .then(function (txt) { 1405 if (!txt) return; 1406 var parts = txt.trim().split('|'); 1407 var version = (parts[0] || '').trim(); 1408 if (!version) return; 1409 try { 1410 sessionStorage.setItem('siteVersion', JSON.stringify({ v: version, t: Date.now() })); 1411 } catch (e) {} 1412 showVersion(version); 1413 }) 1414 .catch(function () { /* silent */ }); 1415 } 1416 1417 if (document.readyState === 'loading') { 1418 document.addEventListener('DOMContentLoaded', tryFetch); 1419 } else { 1420 tryFetch(); 1421 } 1422})(); 1423</script>
1423 1424 1425</body> 1426</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.