{"id":1020,"date":"2026-10-26T17:03:25","date_gmt":"2026-10-26T17:03:25","guid":{"rendered":"https:\/\/srabons.de\/?page_id=1020"},"modified":"2026-10-26T17:03:28","modified_gmt":"2026-10-26T17:03:28","slug":"german-health-insurance-calculator","status":"publish","type":"page","link":"https:\/\/srabons.de\/en\/german-health-insurance-calculator\/","title":{"rendered":"German Health Insurance Calculator"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"de\" class=\"dark\">\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n  <title>GKV &#038; PV Beitragsrechner | German Health Insurance Calculator<\/title>\n  <!-- Tailwind CSS CDN -->\n  <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n  <!-- Chart.js for interactive visual breakdown -->\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n  <!-- Google Fonts: Inter -->\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700;800&#038;family=JetBrains+Mono:wght@400;500;700&#038;display=swap\" rel=\"stylesheet\">\n  \n  <script>\n    tailwind.config = {\n      darkMode: 'class',\n      theme: {\n        extend: {\n          fontFamily: {\n            sans: ['Inter', 'sans-serif'],\n            mono: ['JetBrains Mono', 'monospace'],\n          },\n          colors: {\n            brand: {\n              50: '#ecfdf5',\n              100: '#d1fae5',\n              400: '#34d399',\n              500: '#10b981',\n              600: '#059669',\n            },\n            accent: {\n              400: '#38bdf8',\n              500: '#0ea5e9',\n              600: '#0284c7',\n            },\n            surface: {\n              800: '#1e293b',\n              850: '#172033',\n              900: '#0f172a',\n              950: '#090d16',\n            }\n          }\n        }\n      }\n    }\n  <\/script>\n  <style>\n    \/* Custom scrollbars and slider styling *\/\n    input[type=range]::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      height: 22px;\n      width: 22px;\n      border-radius: 50%;\n      background: #10b981;\n      cursor: pointer;\n      box-shadow: 0 0 10px rgba(16, 185, 129, 0.5);\n      border: 2px solid #ffffff;\n      margin-top: -8px;\n    }\n    input[type=range]::-webkit-slider-runnable-track {\n      width: 100%;\n      height: 6px;\n      cursor: pointer;\n      background: #334155;\n      border-radius: 9999px;\n    }\n    @media print {\n      .no-print { display: none !important; }\n      body { background-color: #ffffff !important; color: #000000 !important; }\n      .print-card { box-shadow: none !important; border: 1px solid #cbd5e1 !important; color: #0f172a !important; }\n    }\n  <\/style>\n<\/head>\n<body class=\"bg-surface-950 text-slate-100 min-h-screen font-sans antialiased flex flex-col selection:bg-brand-500 selection:text-white\">\n\n  <!-- Header -->\n  <header class=\"border-b border-slate-800 bg-surface-900\/80 backdrop-blur sticky top-0 z-40\">\n    <div class=\"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-3.5 flex items-center justify-between\">\n      <div class=\"flex items-center space-x-3\">\n        <div class=\"h-10 w-10 rounded-xl bg-gradient-to-tr from-brand-600 to-accent-500 flex items-center justify-center shadow-lg shadow-brand-500\/20 text-white font-bold text-xl\">\n          \u00a7\n        <\/div>\n        <div>\n          <h1 class=\"text-lg sm:text-xl font-bold tracking-tight flex items-center gap-2\">\n            <span class=\"bg-gradient-to-r from-emerald-400 via-teal-300 to-sky-400 bg-clip-text text-transparent\">GKV &#038; PV<\/span>\n            <span class=\"text-slate-300 font-semibold\" data-i18n=\"appTitle\">Beitragsrechner<\/span>\n          <\/h1>\n          <p class=\"text-xs text-slate-400 font-mono\" data-i18n=\"legalYearNotice\">Gesetzliche Rechenwerte 2025\/2026 (BBG: 5.512,50 \u20ac \/ Mon.)<\/p>\n        <\/div>\n      <\/div>\n      \n      <!-- Top Action bar: Language + Print -->\n      <div class=\"flex items-center gap-3\">\n        <!-- Language Switcher -->\n        <div class=\"flex items-center bg-surface-800 p-1 rounded-xl border border-slate-700\/60 text-xs font-semibold\">\n          <button id=\"langDe\" onclick=\"setLanguage('de')\" class=\"px-2.5 py-1 rounded-lg bg-brand-500 text-white transition shadow-sm\">DE<\/button>\n          <button id=\"langEn\" onclick=\"setLanguage('en')\" class=\"px-2.5 py-1 rounded-lg text-slate-400 hover:text-white transition\">EN<\/button>\n        <\/div>\n\n        <button onclick=\"window.print()\" class=\"no-print p-2 rounded-xl bg-surface-800 hover:bg-slate-700 text-slate-300 hover:text-white border border-slate-700\/60 transition shadow flex items-center gap-1.5 text-xs font-medium\" title=\"Drucken \/ Als PDF speichern\">\n          <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M17 17h2a2 2 0 002-2v-4a2 2 0 00-2-2H5a2 2 0 00-2 2v4a2 2 0 002 2h2m2 4h6a2 2 0 002-2v-4a2 2 0 00-2-2H9a2 2 0 00-2 2v4a2 2 0 002 2zm8-12V5a2 2 0 00-2-2H9a2 2 0 00-2 2v4h10z\"\/><\/svg>\n          <span class=\"hidden sm:inline\" data-i18n=\"printBtn\">Drucken<\/span>\n        <\/button>\n      <\/div>\n    <\/div>\n  <\/header>\n\n  <!-- Main Container -->\n  <main class=\"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-6 sm:py-8 flex-1 grid grid-cols-1 lg:grid-cols-12 gap-6 sm:gap-8\">\n    \n    <!-- LEFT PANEL: Parameters & Controls (Col 1-7) -->\n    <div class=\"lg:col-span-7 space-y-6\">\n      \n      <!-- Status Card -->\n      <div class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 sm:p-6 shadow-xl\">\n        <div class=\"flex items-center justify-between mb-4\">\n          <h2 class=\"text-base sm:text-lg font-bold text-white flex items-center gap-2\">\n            <span class=\"text-brand-400\">01.<\/span>\n            <span data-i18n=\"employmentSection\">Besch\u00e4ftigungsstatus<\/span>\n          <\/h2>\n          <span class=\"text-xs bg-slate-800 text-slate-400 px-2.5 py-1 rounded-full border border-slate-700 font-mono\" id=\"statusBadge\">Angestellter<\/span>\n        <\/div>\n\n        <!-- Status Radio Pills -->\n        <div class=\"grid grid-cols-2 sm:grid-cols-4 gap-2.5\">\n          <label class=\"cursor-pointer\">\n            <input type=\"radio\" name=\"empStatus\" value=\"employee\" checked class=\"peer sr-only\" onchange=\"updateCalculations()\">\n            <div class=\"px-3 py-2.5 rounded-xl border border-slate-700 bg-surface-800 text-center peer-checked:border-brand-500 peer-checked:bg-brand-500\/10 peer-checked:text-brand-400 transition hover:border-slate-600\">\n              <span class=\"text-xs font-semibold block\" data-i18n=\"statusEmployee\">Angestellter<\/span>\n              <span class=\"text-[10px] text-slate-400\" data-i18n=\"statusEmployeeSub\">50\/50 AG\/AN<\/span>\n            <\/div>\n          <\/label>\n          <label class=\"cursor-pointer\">\n            <input type=\"radio\" name=\"empStatus\" value=\"self_employed\" class=\"peer sr-only\" onchange=\"updateCalculations()\">\n            <div class=\"px-3 py-2.5 rounded-xl border border-slate-700 bg-surface-800 text-center peer-checked:border-brand-500 peer-checked:bg-brand-500\/10 peer-checked:text-brand-400 transition hover:border-slate-600\">\n              <span class=\"text-xs font-semibold block\" data-i18n=\"statusSelfEmployed\">Selbstst\u00e4ndig<\/span>\n              <span class=\"text-[10px] text-slate-400\" data-i18n=\"statusSelfEmployedSub\">100% Eigenanteil<\/span>\n            <\/div>\n          <\/label>\n          <label class=\"cursor-pointer\">\n            <input type=\"radio\" name=\"empStatus\" value=\"midijob\" class=\"peer sr-only\" onchange=\"updateCalculations()\">\n            <div class=\"px-3 py-2.5 rounded-xl border border-slate-700 bg-surface-800 text-center peer-checked:border-brand-500 peer-checked:bg-brand-500\/10 peer-checked:text-brand-400 transition hover:border-slate-600\">\n              <span class=\"text-xs font-semibold block\" data-i18n=\"statusMidijob\">\u00dcbergangsbereich<\/span>\n              <span class=\"text-[10px] text-slate-400\">538 &#8211; 2.000 \u20ac<\/span>\n            <\/div>\n          <\/label>\n          <label class=\"cursor-pointer\">\n            <input type=\"radio\" name=\"empStatus\" value=\"student\" class=\"peer sr-only\" onchange=\"updateCalculations()\">\n            <div class=\"px-3 py-2.5 rounded-xl border border-slate-700 bg-surface-800 text-center peer-checked:border-brand-500 peer-checked:bg-brand-500\/10 peer-checked:text-brand-400 transition hover:border-slate-600\">\n              <span class=\"text-xs font-semibold block\" data-i18n=\"statusStudent\">Student<\/span>\n              <span class=\"text-[10px] text-slate-400\" data-i18n=\"statusStudentSub\">Pauschalsatz<\/span>\n            <\/div>\n          <\/label>\n        <\/div>\n\n        <div id=\"selfEmployedNotice\" class=\"hidden mt-3 p-3 rounded-xl bg-amber-500\/10 border border-amber-500\/30 text-xs text-amber-200\">\n          <span class=\"font-bold\" data-i18n=\"selfEmployedTipTitle\">Hinweis Selbstst\u00e4ndige:<\/span>\n          <span data-i18n=\"selfEmployedTipText\">Sie tragen den vollen Beitrag (Arbeitnehmer + Arbeitgeberanteil) allein. Mindestbemessungsgrundlage 2025\/2026: ca. 1.178,33 \u20ac\/Monat. Krankengeldanspruch (14,6% allg. vs 14,0% erm\u00e4\u00dfigt) ber\u00fccksichtigt.<\/span>\n        <\/div>\n      <\/div>\n\n      <!-- Income Input Section -->\n      <div id=\"incomeSectionWrapper\" class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 sm:p-6 shadow-xl space-y-4\">\n        <div class=\"flex items-center justify-between\">\n          <h2 class=\"text-base sm:text-lg font-bold text-white flex items-center gap-2\">\n            <span class=\"text-brand-400\">02.<\/span>\n            <span data-i18n=\"incomeSection\">Bruttoeinkommen<\/span>\n          <\/h2>\n          <!-- Period Toggle -->\n          <div class=\"flex items-center bg-surface-800 p-1 rounded-xl border border-slate-700 text-xs font-medium\">\n            <button id=\"periodMonthly\" onclick=\"setIncomePeriod('monthly')\" class=\"px-3 py-1 rounded-lg bg-brand-500 text-white font-semibold transition\">Monat<\/button>\n            <button id=\"periodYearly\" onclick=\"setIncomePeriod('yearly')\" class=\"px-3 py-1 rounded-lg text-slate-400 hover:text-white transition\">Jahr<\/button>\n          <\/div>\n        <\/div>\n\n        <!-- Input Field & Slider -->\n        <div>\n          <div class=\"relative rounded-2xl shadow-sm\">\n            <div class=\"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-4 text-slate-400 font-mono text-lg\">\u20ac<\/div>\n            <input type=\"text\" id=\"grossIncomeInput\" value=\"4.500,00\" \n              class=\"block w-full rounded-xl bg-surface-850 border border-slate-700 pl-10 pr-16 py-3.5 text-xl font-bold font-mono text-white placeholder-slate-500 focus:border-brand-500 focus:ring-1 focus:ring-brand-500 outline-none transition\" \n              placeholder=\"0,00\" oninput=\"handleIncomeManualInput(this.value)\">\n            <div class=\"absolute inset-y-0 right-0 flex items-center pr-4\">\n              <span class=\"text-xs font-semibold text-slate-400 uppercase tracking-wider\" id=\"incomePeriodLabel\">EUR \/ MON<\/span>\n            <\/div>\n          <\/div>\n\n          <!-- Range slider -->\n          <div class=\"mt-4 space-y-2\">\n            <input type=\"range\" id=\"grossIncomeSlider\" min=\"0\" max=\"12000\" step=\"50\" value=\"4500\" \n              class=\"w-full accent-brand-500\" oninput=\"handleSliderChange(this.value)\">\n            <div class=\"flex justify-between text-[11px] font-mono text-slate-400\">\n              <span>0 \u20ac<\/span>\n              <span class=\"text-amber-400\/90 font-medium\">BBG 2025: 5.512,50 \u20ac<\/span>\n              <span>12.000 \u20ac+<\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <!-- BBG Visual Progress Bar -->\n        <div class=\"pt-2\">\n          <div class=\"flex justify-between items-center text-xs mb-1.5\">\n            <span class=\"text-slate-400 flex items-center gap-1.5 font-medium\">\n              <span data-i18n=\"bbgProgress\">BBG-Aussch\u00f6pfung<\/span>\n              <span class=\"group relative cursor-pointer text-slate-400 hover:text-slate-200\">\n                <svg class=\"w-3.5 h-3.5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke-width=\"2\"><\/circle><path stroke-width=\"2\" d=\"M12 16v-4m0-4h.01\"><\/path><\/svg>\n                <span class=\"no-print absolute left-1\/2 -translate-x-1\/2 bottom-full mb-1.5 hidden group-hover:block w-64 p-2 bg-slate-900 border border-slate-700 text-[11px] text-slate-200 rounded-lg shadow-xl z-50 pointer-events-none\" data-i18n=\"bbgTooltip\">\n                  Beitragsbemessungsgrenze (5.512,50 \u20ac \/ Monat): Einkommen dar\u00fcber hinaus ist beitragsfrei in der gesetzlichen Kranken- und Pflegeversicherung.\n                <\/span>\n              <\/span>\n            <\/span>\n            <span class=\"font-mono font-bold text-xs\" id=\"bbgCapText\">81.6% (4.500,00 \u20ac)<\/span>\n          <\/div>\n          <div class=\"w-full bg-slate-800 rounded-full h-2.5 overflow-hidden p-0.5 border border-slate-700\/60\">\n            <div id=\"bbgProgressBar\" class=\"h-full bg-gradient-to-r from-teal-500 to-brand-400 rounded-full transition-all duration-300\" style=\"width: 81.6%\"><\/div>\n          <\/div>\n          <p id=\"bbgOverCapAlert\" class=\"hidden text-[11px] text-amber-300 mt-1.5 flex items-center gap-1\">\n            <svg class=\"w-3.5 h-3.5 shrink-0\" fill=\"currentColor\" viewBox=\"0 0 20 20\"><path fill-rule=\"evenodd\" d=\"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z\" clip-rule=\"evenodd\"><\/path><\/svg>\n            <span data-i18n=\"bbgCapReachedMsg\">Einkommen \u00fcbersteigt die BBG. Beitr\u00e4ge sind auf das Maximum gedeckelt.<\/span>\n          <\/p>\n        <\/div>\n      <\/div>\n\n      <!-- Health Insurance (GKV) & Zusatzbeitrag -->\n      <div class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 sm:p-6 shadow-xl space-y-4\">\n        <h2 class=\"text-base sm:text-lg font-bold text-white flex items-center gap-2\">\n          <span class=\"text-brand-400\">03.<\/span>\n          <span data-i18n=\"gkvSection\">Krankenkasse &#038; Zusatzbeitrag<\/span>\n        <\/h2>\n\n        <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-4\">\n          <!-- Preset Krankenkasse Picker -->\n          <div>\n            <label class=\"block text-xs font-medium text-slate-300 mb-1.5\" data-i18n=\"kassePresetLabel\">Krankenkasse Auswahl<\/label>\n            <select id=\"kasseSelect\" onchange=\"handleKasseSelect(this.value)\" class=\"w-full bg-surface-850 border border-slate-700 rounded-xl px-3.5 py-2.5 text-sm text-slate-100 font-medium focus:border-brand-500 focus:ring-1 focus:ring-brand-500 outline-none\">\n              <option value=\"2.50\" selected>Techniker Krankenkasse (TK) &#8211; 2,50%<\/option>\n              <option value=\"2.80\">Barmer &#8211; 2,80%<\/option>\n              <option value=\"3.10\">DAK Gesundheit &#8211; 3,10%<\/option>\n              <option value=\"2.69\">AOK Bayern &#8211; 2,69%<\/option>\n              <option value=\"3.30\">AOK Plus (Sachsen\/Th\u00fcr.) &#8211; 3,30%<\/option>\n              <option value=\"2.39\">SBK (Siemens-Betriebskrankenkasse) &#8211; 2,39%<\/option>\n              <option value=\"2.50\">Durchschnittlicher Zusatzbeitrag &#8211; 2,50%<\/option>\n              <option value=\"custom\">Individueller Zusatzbeitrag&#8230;<\/option>\n            <\/select>\n          <\/div>\n\n          <!-- Custom Zusatzbeitrag input -->\n          <div>\n            <label class=\"block text-xs font-medium text-slate-300 mb-1.5 flex items-center justify-between\">\n              <span data-i18n=\"zusatzbeitragField\">Zusatzbeitrag (%)<\/span>\n              <span class=\"text-[11px] text-slate-400 font-mono\" id=\"zusatzHalfShare\">1,25% AN \/ 1,25% AG<\/span>\n            <\/label>\n            <div class=\"relative\">\n              <input type=\"number\" id=\"zusatzRateInput\" step=\"0.01\" min=\"0\" max=\"6.0\" value=\"2.50\" \n                class=\"w-full bg-surface-850 border border-slate-700 rounded-xl px-3.5 py-2.5 text-sm font-mono font-bold text-white focus:border-brand-500 focus:ring-1 focus:ring-brand-500 outline-none\" \n                oninput=\"handleCustomZusatzInput(this.value)\">\n              <div class=\"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none text-slate-400 font-mono text-sm\">%<\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"p-3 bg-surface-850 rounded-xl border border-slate-700\/60 flex items-center justify-between text-xs text-slate-300\">\n          <span class=\"text-slate-400\" data-i18n=\"baseGkvRate\">Gesetzlicher Grundbeitragssatz:<\/span>\n          <span class=\"font-mono font-semibold text-slate-200\">14,60% (7,30% AN + 7,30% AG)<\/span>\n        <\/div>\n      <\/div>\n\n      <!-- Long-Term Care (Pflegeversicherung) Options -->\n      <div class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 sm:p-6 shadow-xl space-y-4\">\n        <div class=\"flex items-center justify-between\">\n          <h2 class=\"text-base sm:text-lg font-bold text-white flex items-center gap-2\">\n            <span class=\"text-brand-400\">04.<\/span>\n            <span data-i18n=\"pvSection\">Pflegeversicherung (PV) Details<\/span>\n          <\/h2>\n          <span class=\"text-xs bg-brand-500\/10 text-brand-400 border border-brand-500\/30 px-2 py-0.5 rounded font-mono\">PUEG 2025\/2026<\/span>\n        <\/div>\n\n        <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-4\">\n          <!-- Federal State (Saxony toggle) -->\n          <div>\n            <label class=\"block text-xs font-medium text-slate-300 mb-1.5 flex items-center gap-1\">\n              <span data-i18n=\"federalStateLabel\">Bundesland<\/span>\n              <span class=\"group relative cursor-pointer text-slate-400 hover:text-slate-200\">\n                <svg class=\"w-3.5 h-3.5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"10\" stroke-width=\"2\"><\/circle><path stroke-width=\"2\" d=\"M12 16v-4m0-4h.01\"><\/path><\/svg>\n                <span class=\"no-print absolute left-1\/2 -translate-x-1\/2 bottom-full mb-1.5 hidden group-hover:block w-64 p-2 bg-slate-900 border border-slate-700 text-[11px] text-slate-200 rounded-lg shadow-xl z-50 pointer-events-none\" data-i18n=\"saxonyTooltip\">\n                  In Sachsen zahlen Arbeitnehmer wegen des Feiertags &#8216;Bu\u00df- und Bettag&#8217; 0,5% mehr als der Arbeitgeber (PV-Aufteilung: z.B. 2,2% AN \/ 1,2% AG statt 1,7% \/ 1,7%).\n                <\/span>\n              <\/span>\n            <\/label>\n            <select id=\"stateSelect\" onchange=\"updateCalculations()\" class=\"w-full bg-surface-850 border border-slate-700 rounded-xl px-3.5 py-2.5 text-sm text-slate-100 font-medium focus:border-brand-500 outline-none\">\n              <option value=\"standard\" selected data-i18n=\"stateOther\">Alle anderen 15 Bundesl\u00e4nder (Standard)<\/option>\n              <option value=\"saxony\" data-i18n=\"stateSaxony\">Sachsen (Sonderregelung Bu\u00df- &#038; Bettag)<\/option>\n            <\/select>\n          <\/div>\n\n          <!-- Age 23 Check -->\n          <div>\n            <label class=\"block text-xs font-medium text-slate-300 mb-1.5\" data-i18n=\"ageLabel\">Alter<\/label>\n            <select id=\"ageOver23\" onchange=\"updateCalculations()\" class=\"w-full bg-surface-850 border border-slate-700 rounded-xl px-3.5 py-2.5 text-sm text-slate-100 font-medium focus:border-brand-500 outline-none\">\n              <option value=\"yes\" selected data-i18n=\"age23Plus\">23 Jahre oder \u00e4lter<\/option>\n              <option value=\"no\" data-i18n=\"ageUnder23\">Unter 23 Jahre alt (kein Kinderlosenzuschlag)<\/option>\n            <\/select>\n          <\/div>\n        <\/div>\n\n        <!-- Children count under 25 -->\n        <div>\n          <div class=\"flex justify-between items-center mb-1.5\">\n            <label class=\"text-xs font-medium text-slate-300 flex items-center gap-1.5\">\n              <span data-i18n=\"childrenLabel\">Kinder unter 25 Jahren<\/span>\n              <span class=\"text-[11px] text-slate-400\" id=\"childrenDiscountInfo\"><\/span>\n            <\/label>\n            <span class=\"font-mono text-sm font-bold text-brand-400\" id=\"childrenCounterValue\">0 Kinder<\/span>\n          <\/div>\n          <!-- Segmented selector buttons for children (0, 1, 2, 3, 4, 5+) -->\n          <div class=\"grid grid-cols-6 gap-1.5 bg-surface-850 p-1 rounded-xl border border-slate-700\/70\">\n            <button type=\"button\" onclick=\"setChildrenCount(0)\" class=\"child-btn active py-2 rounded-lg text-xs font-bold transition text-slate-300 bg-brand-500 text-white\" data-children=\"0\">0<\/button>\n            <button type=\"button\" onclick=\"setChildrenCount(1)\" class=\"child-btn py-2 rounded-lg text-xs font-bold transition text-slate-300 hover:bg-slate-800\" data-children=\"1\">1<\/button>\n            <button type=\"button\" onclick=\"setChildrenCount(2)\" class=\"child-btn py-2 rounded-lg text-xs font-bold transition text-slate-300 hover:bg-slate-800\" data-children=\"2\">2<\/button>\n            <button type=\"button\" onclick=\"setChildrenCount(3)\" class=\"child-btn py-2 rounded-lg text-xs font-bold transition text-slate-300 hover:bg-slate-800\" data-children=\"3\">3<\/button>\n            <button type=\"button\" onclick=\"setChildrenCount(4)\" class=\"child-btn py-2 rounded-lg text-xs font-bold transition text-slate-300 hover:bg-slate-800\" data-children=\"4\">4<\/button>\n            <button type=\"button\" onclick=\"setChildrenCount(5)\" class=\"child-btn py-2 rounded-lg text-xs font-bold transition text-slate-300 hover:bg-slate-800\" data-children=\"5\">5+<\/button>\n          <\/div>\n        <\/div>\n\n        <!-- Dynamic PV Summary Note -->\n        <div id=\"pvRuleSummary\" class=\"p-3 bg-surface-850 rounded-xl border border-slate-700\/60 text-xs text-slate-300 flex items-start gap-2.5\">\n          <div class=\"text-brand-400 mt-0.5 font-bold\">\u2139<\/div>\n          <div class=\"leading-relaxed\" id=\"pvRuleExplanation\">\n            <!-- Filled via JS -->\n          <\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n\n    <!-- RIGHT PANEL: Calculation Results & Analytics (Col 8-12) -->\n    <div class=\"lg:col-span-5 space-y-6\">\n      \n      <!-- Primary Summary Card -->\n      <div class=\"print-card bg-gradient-to-b from-surface-900 to-surface-850 border border-slate-800 rounded-3xl p-6 shadow-2xl relative overflow-hidden\">\n        <div class=\"absolute -top-24 -right-24 w-60 h-60 bg-brand-500\/10 rounded-full blur-3xl pointer-events-none\"><\/div>\n\n        <div class=\"flex items-center justify-between pb-4 border-b border-slate-800\">\n          <div>\n            <span class=\"text-xs uppercase tracking-wider font-semibold text-slate-400\" data-i18n=\"employeeDeductionTitle\">Monatlicher AN-Abzug<\/span>\n            <div class=\"text-3xl sm:text-4xl font-extrabold text-white font-mono tracking-tight mt-0.5\" id=\"totalEmployeeMonthly\">\n              434,25 \u20ac\n            <\/div>\n          <\/div>\n          <div class=\"text-right\">\n            <span class=\"text-xs text-slate-400 uppercase tracking-wider block\" data-i18n=\"totalShareRate\">Beitragssatz (AN)<\/span>\n            <span class=\"text-lg font-bold font-mono text-emerald-400\" id=\"totalEmployeePercent\">10,75%<\/span>\n          <\/div>\n        <\/div>\n\n        <!-- Dual Column Comparison: Employee vs Employer -->\n        <div class=\"grid grid-cols-2 gap-4 py-4 border-b border-slate-800\">\n          <div class=\"space-y-1\">\n            <span class=\"text-xs text-slate-400 block\" data-i18n=\"employeeShare\">Arbeitnehmeranteil<\/span>\n            <div class=\"text-base font-bold font-mono text-slate-100\" id=\"cardEmpGkv\">384,75 \u20ac <span class=\"text-xs font-normal text-slate-400 block\">GKV<\/span><\/div>\n            <div class=\"text-base font-bold font-mono text-slate-100\" id=\"cardEmpPv\">49,50 \u20ac <span class=\"text-xs font-normal text-slate-400 block\">PV<\/span><\/div>\n          <\/div>\n          <div class=\"space-y-1 text-right\">\n            <span class=\"text-xs text-slate-400 block\" data-i18n=\"employerShare\">Arbeitgeberanteil<\/span>\n            <div class=\"text-base font-bold font-mono text-slate-300\" id=\"cardAgGkv\">384,75 \u20ac <span class=\"text-xs font-normal text-slate-500 block\">GKV<\/span><\/div>\n            <div class=\"text-base font-bold font-mono text-slate-300\" id=\"cardAgPv\">76,50 \u20ac <span class=\"text-xs font-normal text-slate-500 block\">PV<\/span><\/div>\n          <\/div>\n        <\/div>\n\n        <!-- Total Solidarity Contribution Sum (GKV + PV Gesamt) -->\n        <div class=\"pt-4 flex items-center justify-between\">\n          <div>\n            <span class=\"text-xs text-slate-400\" data-i18n=\"totalCostBoth\">Gesamtbeitrag (Kasse erh\u00e4lt)<\/span>\n            <span class=\"block text-xl font-bold font-mono text-accent-400\" id=\"totalCombinedMonthly\">895,50 \u20ac \/ Mon.<\/span>\n          <\/div>\n          <div class=\"text-right\">\n            <span class=\"text-xs text-slate-400\" data-i18n=\"annualBurden\">Jahresbelastung (AN)<\/span>\n            <span class=\"block text-sm font-bold font-mono text-slate-200\" id=\"totalEmployeeYearly\">5.211,00 \u20ac \/ Jahr<\/span>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Interactive Chart Breakdown -->\n      <div class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 shadow-xl\">\n        <h3 class=\"text-sm font-bold text-white mb-3 flex items-center justify-between\">\n          <span data-i18n=\"chartTitle\">Beitragszusammensetzung<\/span>\n          <span class=\"text-xs text-slate-400 font-mono\" id=\"chartTotalLabel\">Monatlich<\/span>\n        <\/h3>\n        <div class=\"h-48 relative flex items-center justify-center\">\n          <canvas id=\"contributionDoughnut\"><\/canvas>\n        <\/div>\n        <div class=\"grid grid-cols-3 gap-2 mt-3 pt-3 border-t border-slate-800 text-center text-[11px]\">\n          <div>\n            <span class=\"inline-block w-2.5 h-2.5 rounded-full bg-emerald-500 mr-1\"><\/span>\n            <span class=\"text-slate-400\">GKV Basis<\/span>\n            <div class=\"font-mono font-semibold text-slate-200 mt-0.5\" id=\"chartLegendGkvBase\">&#8212;<\/div>\n          <\/div>\n          <div>\n            <span class=\"inline-block w-2.5 h-2.5 rounded-full bg-teal-400 mr-1\"><\/span>\n            <span class=\"text-slate-400\">Zusatzbeitrag<\/span>\n            <div class=\"font-mono font-semibold text-slate-200 mt-0.5\" id=\"chartLegendZusatz\">&#8212;<\/div>\n          <\/div>\n          <div>\n            <span class=\"inline-block w-2.5 h-2.5 rounded-full bg-sky-400 mr-1\"><\/span>\n            <span class=\"text-slate-400\">Pflege (PV)<\/span>\n            <div class=\"font-mono font-semibold text-slate-200 mt-0.5\" id=\"chartLegendPv\">&#8212;<\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Detailed Breakdown Table -->\n      <div class=\"bg-surface-900 border border-slate-800 rounded-2xl p-5 shadow-xl space-y-3\">\n        <h3 class=\"text-sm font-bold text-white\" data-i18n=\"breakdownTitle\">Detaillierte Beitrags\u00fcbersicht<\/h3>\n        <div class=\"overflow-x-auto\">\n          <table class=\"w-full text-left text-xs font-mono\">\n            <thead>\n              <tr class=\"border-b border-slate-800 text-slate-400 font-sans\">\n                <th class=\"py-2\" data-i18n=\"thPosten\">Posten<\/th>\n                <th class=\"py-2 text-right\" data-i18n=\"thRate\">Satz<\/th>\n                <th class=\"py-2 text-right\" data-i18n=\"thMonthly\">Monat<\/th>\n                <th class=\"py-2 text-right\" data-i18n=\"thYearly\">Jahr<\/th>\n              <\/tr>\n            <\/thead>\n            <tbody class=\"divide-y divide-slate-800\/60 text-slate-200\">\n              <tr>\n                <td class=\"py-2.5 font-sans\" data-i18n=\"rowGkvBaseAn\">GKV Grundbeitrag (AN)<\/td>\n                <td class=\"text-right text-slate-400\">7,30%<\/td>\n                <td class=\"text-right font-semibold\" id=\"tableGkvBaseAnM\">&#8212;<\/td>\n                <td class=\"text-right text-slate-400\" id=\"tableGkvBaseAnY\">&#8212;<\/td>\n              <\/tr>\n              <tr>\n                <td class=\"py-2.5 font-sans\" data-i18n=\"rowZusatzAn\">GKV Zusatzbeitrag (AN)<\/td>\n                <td class=\"text-right text-slate-400\" id=\"tableZusatzRateAn\">&#8212;<\/td>\n                <td class=\"text-right font-semibold\" id=\"tableZusatzAnM\">&#8212;<\/td>\n                <td class=\"text-right text-slate-400\" id=\"tableZusatzAnY\">&#8212;<\/td>\n              <\/tr>\n              <tr>\n                <td class=\"py-2.5 font-sans\" data-i18n=\"rowPvAn\">Pflegeversicherung (AN)<\/td>\n                <td class=\"text-right text-slate-400\" id=\"tablePvRateAn\">&#8212;<\/td>\n                <td class=\"text-right font-semibold text-sky-400\" id=\"tablePvAnM\">&#8212;<\/td>\n                <td class=\"text-right text-slate-400\" id=\"tablePvAnY\">&#8212;<\/td>\n              <\/tr>\n              <tr class=\"bg-surface-850\/60 font-semibold text-white\">\n                <td class=\"py-2.5 font-sans\" data-i18n=\"rowTotalAn\">Gesamtabzug Arbeitnehmer<\/td>\n                <td class=\"text-right text-brand-400\" id=\"tableTotalRateAn\">&#8212;<\/td>\n                <td class=\"text-right text-brand-400\" id=\"tableTotalAnM\">&#8212;<\/td>\n                <td class=\"text-right text-brand-400\" id=\"tableTotalAnY\">&#8212;<\/td>\n              <\/tr>\n              <tr>\n                <td class=\"py-2.5 font-sans text-slate-400\" data-i18n=\"rowAgTotal\">Arbeitgeberanteil Gesamt<\/td>\n                <td class=\"text-right text-slate-500\" id=\"tableTotalRateAg\">&#8212;<\/td>\n                <td class=\"text-right text-slate-300\" id=\"tableTotalAgM\">&#8212;<\/td>\n                <td class=\"text-right text-slate-500\" id=\"tableTotalAgY\">&#8212;<\/td>\n              <\/tr>\n            <\/tbody>\n          <\/table>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/main>\n\n  <!-- Educational Explainer Footer \/ Info Cards -->\n  <section class=\"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8 w-full border-t border-slate-800 text-slate-400 text-xs\">\n    <div class=\"grid grid-cols-1 md:grid-cols-4 gap-6\">\n      <div class=\"bg-surface-900\/40 p-4 rounded-xl border border-slate-800\">\n        <h4 class=\"font-bold text-slate-200 mb-1.5 flex items-center gap-1.5\" data-i18n=\"infoBbgTitle\">\n          <span class=\"w-1.5 h-1.5 rounded-full bg-brand-400\"><\/span> Beitragsbemessungsgrenze\n        <\/h4>\n        <p class=\"leading-relaxed\" data-i18n=\"infoBbgText\">\n          Die BBG 2025\/2026 betr\u00e4gt 5.512,50 \u20ac \/ Monat (66.150 \u20ac \/ Jahr). Wer mehr verdient, zahlt f\u00fcr den dar\u00fcberliegenden Betrag keine Kranken- und Pflegeversicherungsbeitr\u00e4ge.\n        <\/p>\n      <\/div>\n      <div class=\"bg-surface-900\/40 p-4 rounded-xl border border-slate-800\">\n        <h4 class=\"font-bold text-slate-200 mb-1.5 flex items-center gap-1.5\" data-i18n=\"infoPuegTitle\">\n          <span class=\"w-1.5 h-1.5 rounded-full bg-sky-400\"><\/span> PUEG Kinder-Staffelung\n        <\/h4>\n        <p class=\"leading-relaxed\" data-i18n=\"infoPuegText\">\n          Ab 23 Jahren ohne Kinder gilt der Kinderlosenzuschlag (+0,60%). Bei 2 bis 5 Kindern unter 25 Jahren gibt es einen Rabatt von 0,25% pro weiterem Kind auf den PV-Beitrag.\n        <\/p>\n      <\/div>\n      <div class=\"bg-surface-900\/40 p-4 rounded-xl border border-slate-800\">\n        <h4 class=\"font-bold text-slate-200 mb-1.5 flex items-center gap-1.5\" data-i18n=\"infoSaxonyTitle\">\n          <span class=\"w-1.5 h-1.5 rounded-full bg-amber-400\"><\/span> Sonderregelung Sachsen\n        <\/h4>\n        <p class=\"leading-relaxed\" data-i18n=\"infoSaxonyText\">\n          Da in Sachsen der Bu\u00df- und Bettag als gesetzlicher Feiertag beibehalten wurde, tragen s\u00e4chsische Arbeitnehmer 0,5% mehr Beitrag zur Pflegeversicherung als der Arbeitgeber.\n        <\/p>\n      <\/div>\n      <div class=\"bg-surface-900\/40 p-4 rounded-xl border border-slate-800\">\n        <h4 class=\"font-bold text-slate-200 mb-1.5 flex items-center gap-1.5\" data-i18n=\"infoMidiTitle\">\n          <span class=\"w-1.5 h-1.5 rounded-full bg-emerald-400\"><\/span> \u00dcbergangsbereich (Midijob)\n        <\/h4>\n        <p class=\"leading-relaxed\" data-i18n=\"infoMidiText\">\n          Im Bereich 538,01 \u20ac bis 2.000 \u20ac monatlich gilt die Gleitzonenformel (\u00a7 20 SGB IV). Der Arbeitnehmerbeitrag steigt dabei gleitend von stark erm\u00e4\u00dfigt auf den vollen Satz an.\n        <\/p>\n      <\/div>\n    <\/div>\n    \n    <div class=\"mt-8 text-center text-slate-400 text-[11px] font-sans\">\n      <span data-i18n=\"disclaimer\">Hinweis: Alle Berechnungen erfolgen nach den gesetzlichen Bestimmungen der Bundesrepublik Deutschland (\u00a7\u00a7 226 ff. SGB V, \u00a7\u00a7 55 ff. SGB XI). Stand: 2025\/2026. Ohne Gew\u00e4hr f\u00fcr individuelle Sonderf\u00e4lle.<\/span>\n    <\/div>\n  <\/section>\n\n  <!-- Logic & Scripts -->\n  <script>\n    \/* -------------------------------------------------------------\n     * CONSTANTS & STATUTORY PARAMETERS (2025\/2026 GERMANY)\n     * ------------------------------------------------------------- *\/\n    const BBG_MONTHLY_2025 = 5512.50; \/\/ Gesetzliche Beitragsbemessungsgrenze Kranken\/Pflege\n    const BASE_GKV_RATE = 0.146;      \/\/ Allgemeiner Beitragssatz (14.6%)\n    const REDUCED_GKV_RATE = 0.140;   \/\/ Erm\u00e4\u00dfigter Beitragssatz ohne Krankengeld (14.0%)\n    const PV_BASE_RATE = 0.034;       \/\/ Gesetzlicher Grundsatz Pflegeversicherung (3.4%)\n    const PV_CHILDLESS_SURCHARGE = 0.006; \/\/ Kinderlosenzuschlag (+0.6%)\n    const PV_CHILD_DISCOUNT = 0.0025; \/\/ Abschlag ab dem 2. bis 5. Kind (-0.25% je Kind)\n    const STUDENT_BASE_GKV = 92.48;   \/\/ Studentische KV monatlich (ca. Referenzwert)\n    const STUDENT_BASE_PV = 32.48;    \/\/ Studentische PV monatlich (Basis)\n    const MIN_ASSESSMENT_SELF_EMPLOYED = 1178.33; \/\/ Mindestbemessungsgrundlage\n\n    \/\/ Midijob Factor F 2025 (ca. 0.686)\n    const MIDIJOB_MIN = 538.01;\n    const MIDIJOB_MAX = 2000.00;\n    const MIDIJOB_FACTOR_F = 0.686;\n\n    \/* -------------------------------------------------------------\n     * APPLICATION STATE\n     * ------------------------------------------------------------- *\/\n    let currentLang = 'de';\n    let incomePeriod = 'monthly'; \/\/ 'monthly' or 'yearly'\n    let grossMonthly = 4500.0;\n    let selectedChildren = 0;\n    let chartInstance = null;\n\n    \/* -------------------------------------------------------------\n     * TRANSLATION DICTIONARY\n     * ------------------------------------------------------------- *\/\n    const i18nData = {\n      de: {\n        appTitle: \"Beitragsrechner\",\n        legalYearNotice: \"Gesetzliche Rechenwerte 2025\/2026 (BBG: 5.512,50 \u20ac \/ Mon.)\",\n        printBtn: \"Drucken\",\n        employmentSection: \"Besch\u00e4ftigungsstatus\",\n        statusEmployee: \"Angestellter\",\n        statusEmployeeSub: \"50\/50 AG\/AN\",\n        statusSelfEmployed: \"Selbstst\u00e4ndig\",\n        statusSelfEmployedSub: \"100% Eigenanteil\",\n        statusMidijob: \"\u00dcbergangsbereich\",\n        statusStudent: \"Student\",\n        statusStudentSub: \"Pauschalsatz\",\n        selfEmployedTipTitle: \"Hinweis Selbstst\u00e4ndige:\",\n        selfEmployedTipText: \"Sie tragen den vollen Beitrag (Arbeitnehmer + Arbeitgeberanteil) allein. Mindestbemessungsgrundlage 2025\/2026: ca. 1.178,33 \u20ac\/Monat. Krankengeldanspruch (14,6% allg. vs 14,0% erm\u00e4\u00dfigt) ber\u00fccksichtigt.\",\n        incomeSection: \"Bruttoeinkommen\",\n        bbgProgress: \"BBG-Aussch\u00f6pfung\",\n        bbgTooltip: \"Beitragsbemessungsgrenze (5.512,50 \u20ac \/ Monat): Einkommen dar\u00fcber hinaus ist beitragsfrei in der gesetzlichen Kranken- und Pflegeversicherung.\",\n        bbgCapReachedMsg: \"Einkommen \u00fcbersteigt die BBG. Beitr\u00e4ge sind auf das Maximum gedeckelt.\",\n        gkvSection: \"Krankenkasse & Zusatzbeitrag\",\n        kassePresetLabel: \"Krankenkasse Auswahl\",\n        zusatzbeitragField: \"Zusatzbeitrag (%)\",\n        baseGkvRate: \"Gesetzlicher Grundbeitragssatz:\",\n        pvSection: \"Pflegeversicherung (PV) Details\",\n        federalStateLabel: \"Bundesland\",\n        saxonyTooltip: \"In Sachsen zahlen Arbeitnehmer wegen des Feiertags 'Bu\u00df- und Bettag' 0,5% mehr als der Arbeitgeber (PV-Aufteilung: z.B. 2,2% AN \/ 1,2% AG statt 1,7% \/ 1,7%).\",\n        stateOther: \"Alle anderen 15 Bundesl\u00e4nder (Standard)\",\n        stateSaxony: \"Sachsen (Sonderregelung Bu\u00df- & Bettag)\",\n        ageLabel: \"Alter\",\n        age23Plus: \"23 Jahre oder \u00e4lter\",\n        ageUnder23: \"Unter 23 Jahre alt (kein Kinderlosenzuschlag)\",\n        childrenLabel: \"Kinder unter 25 Jahren\",\n        employeeDeductionTitle: \"Monatlicher AN-Abzug\",\n        totalShareRate: \"Beitragssatz (AN)\",\n        employeeShare: \"Arbeitnehmeranteil\",\n        employerShare: \"Arbeitgeberanteil\",\n        totalCostBoth: \"Gesamtbeitrag (Kasse erh\u00e4lt)\",\n        annualBurden: \"Jahresbelastung (AN)\",\n        chartTitle: \"Beitragszusammensetzung\",\n        breakdownTitle: \"Detaillierte Beitrags\u00fcbersicht\",\n        thPosten: \"Posten\",\n        thRate: \"Satz\",\n        thMonthly: \"Monat\",\n        thYearly: \"Jahr\",\n        rowGkvBaseAn: \"GKV Grundbeitrag (AN)\",\n        rowZusatzAn: \"GKV Zusatzbeitrag (AN)\",\n        rowPvAn: \"Pflegeversicherung (AN)\",\n        rowTotalAn: \"Gesamtabzug Arbeitnehmer\",\n        rowAgTotal: \"Arbeitgeberanteil Gesamt\",\n        infoBbgTitle: \"Beitragsbemessungsgrenze\",\n        infoBbgText: \"Die BBG 2025\/2026 betr\u00e4gt 5.512,50 \u20ac \/ Monat (66.150 \u20ac \/ Jahr). Wer mehr verdient, zahlt f\u00fcr den dar\u00fcberliegenden Betrag keine Kranken- und Pflegeversicherungsbeitr\u00e4ge.\",\n        infoPuegTitle: \"PUEG Kinder-Staffelung\",\n        infoPuegText: \"Ab 23 Jahren ohne Kinder gilt der Kinderlosenzuschlag (+0,60%). Bei 2 bis 5 Kindern unter 25 Jahren gibt es einen Rabatt von 0,25% pro weiterem Kind auf den PV-Beitrag.\",\n        infoSaxonyTitle: \"Sonderregelung Sachsen\",\n        infoSaxonyText: \"Da in Sachsen der Bu\u00df- und Bettag als gesetzlicher Feiertag beibehalten wurde, tragen s\u00e4chsische Arbeitnehmer 0,5% mehr Beitrag zur Pflegeversicherung als der Arbeitgeber.\",\n        infoMidiTitle: \"\u00dcbergangsbereich (Midijob)\",\n        infoMidiText: \"Im Bereich 538,01 \u20ac bis 2.000 \u20ac monatlich gilt die Gleitzonenformel (\u00a7 20 SGB IV). Der Arbeitnehmerbeitrag steigt dabei gleitend von stark erm\u00e4\u00dfigt auf den vollen Satz an.\",\n        disclaimer: \"Hinweis: Alle Berechnungen erfolgen nach den gesetzlichen Bestimmungen der Bundesrepublik Deutschland (\u00a7\u00a7 226 ff. SGB V, \u00a7\u00a7 55 ff. SGB XI). Stand: 2025\/2026. Ohne Gew\u00e4hr f\u00fcr individuelle Sonderf\u00e4lle.\"\n      },\n      en: {\n        appTitle: \"Contribution Calculator\",\n        legalYearNotice: \"Statutory parameters 2025\/2026 (Income Cap: \u20ac5,512.50 \/ mo.)\",\n        printBtn: \"Print\",\n        employmentSection: \"Employment Status\",\n        statusEmployee: \"Employee\",\n        statusEmployeeSub: \"50\/50 ER\/EE split\",\n        statusSelfEmployed: \"Self-Employed\",\n        statusSelfEmployedSub: \"100% paid by self\",\n        statusMidijob: \"Midijob \/ Sliding Zone\",\n        statusStudent: \"Student\",\n        statusStudentSub: \"Flat Student Rate\",\n        selfEmployedTipTitle: \"Self-Employed Notice:\",\n        selfEmployedTipText: \"You pay both employee and employer shares (100%). Minimum assessment base 2025\/2026 is approx. \u20ac1,178.33\/mo. Regular sickness allowance (14.6% vs 14.0%) is accounted for.\",\n        incomeSection: \"Gross Income\",\n        bbgProgress: \"Income Cap Utilization\",\n        bbgTooltip: \"Contribution Assessment Ceiling (\u20ac5,512.50 \/ month): Income above this threshold is free from statutory health & care insurance contributions.\",\n        bbgCapReachedMsg: \"Income exceeds the statutory cap (BBG). Contributions are capped at maximum.\",\n        gkvSection: \"Health Fund & Additional Contribution\",\n        kassePresetLabel: \"Health Fund Preset\",\n        zusatzbeitragField: \"Additional Rate (%)\",\n        baseGkvRate: \"Statutory Base Health Rate:\",\n        pvSection: \"Long-Term Care (PV) Details\",\n        federalStateLabel: \"Federal State\",\n        saxonyTooltip: \"In Saxony, due to retaining the Repentance Day public holiday, employees pay 0.5% more toward PV than employers (e.g. 2.2% EE \/ 1.2% ER instead of 1.7% \/ 1.7%).\",\n        stateOther: \"All other 15 Federal States (Standard)\",\n        stateSaxony: \"Saxony (Special Bu\u00df- & Bettag Rule)\",\n        ageLabel: \"Age\",\n        age23Plus: \"23 years or older\",\n        ageUnder23: \"Under 23 years (no childless penalty)\",\n        childrenLabel: \"Children under 25\",\n        employeeDeductionTitle: \"Monthly Employee Net Deduction\",\n        totalShareRate: \"Employee Rate\",\n        employeeShare: \"Employee Share\",\n        employerShare: \"Employer Share\",\n        totalCostBoth: \"Total Received by Fund\",\n        annualBurden: \"Annual Employee Cost\",\n        chartTitle: \"Contribution Breakdown\",\n        breakdownTitle: \"Detailed Overview Table\",\n        thPosten: \"Category\",\n        thRate: \"Rate\",\n        thMonthly: \"Monthly\",\n        thYearly: \"Annual\",\n        rowGkvBaseAn: \"Statutory Base Health (EE)\",\n        rowZusatzAn: \"Additional Rate (EE)\",\n        rowPvAn: \"Long-Term Care (EE)\",\n        rowTotalAn: \"Total Employee Deduction\",\n        rowAgTotal: \"Total Employer Share\",\n        infoBbgTitle: \"Contribution Ceiling (BBG)\",\n        infoBbgText: \"The 2025\/2026 BBG is \u20ac5,512.50\/month (\u20ac66,150\/year). Income above this amount is exempt from health and long-term care insurance contributions.\",\n        infoPuegTitle: \"PUEG Child Discounts\",\n        infoPuegText: \"Childless adults aged 23+ pay an extra surcharge (+0.60%). Parents with 2 to 5 children under 25 receive a staggered discount of 0.25% per additional child.\",\n        infoSaxonyTitle: \"Saxony Special Rule\",\n        infoSaxonyText: \"Because Saxony kept 'Bu\u00df- und Bettag' as a paid public holiday, employees in Saxony pay 0.5% more toward PV than their employers.\",\n        infoMidiTitle: \"Sliding Midijob Scale\",\n        infoMidiText: \"Between \u20ac538.01 and \u20ac2,000 per month, the transition formula applies. The employee share scales up gradually to prevent sudden deduction shocks.\",\n        disclaimer: \"Disclaimer: All figures calculated strictly based on German statutory law (\u00a7\u00a7 226 ff. SGB V, \u00a7\u00a7 55 ff. SGB XI). Valid for 2025\/2026. Non-binding estimate.\"\n      }\n    };\n\n    \/* -------------------------------------------------------------\n     * LANGUAGE SWITCHER\n     * ------------------------------------------------------------- *\/\n    function setLanguage(lang) {\n      currentLang = lang;\n      document.getElementById('langDe').className = lang === 'de' ? 'px-2.5 py-1 rounded-lg bg-brand-500 text-white transition shadow-sm' : 'px-2.5 py-1 rounded-lg text-slate-400 hover:text-white transition';\n      document.getElementById('langEn').className = lang === 'en' ? 'px-2.5 py-1 rounded-lg bg-brand-500 text-white transition shadow-sm' : 'px-2.5 py-1 rounded-lg text-slate-400 hover:text-white transition';\n      \n      document.querySelectorAll('[data-i18n]').forEach(el => {\n        const key = el.getAttribute('data-i18n');\n        if (i18nData[lang] && i18nData[lang][key]) {\n          el.textContent = i18nData[lang][key];\n        }\n      });\n\n      updateCalculations();\n    }\n\n    \/* -------------------------------------------------------------\n     * FORMATTERS\n     * ------------------------------------------------------------- *\/\n    function formatCurrency(num) {\n      return new Intl.NumberFormat(currentLang === 'de' ? 'de-DE' : 'en-US', {\n        style: 'currency',\n        currency: 'EUR',\n        minimumFractionDigits: 2,\n        maximumFractionDigits: 2\n      }).format(num);\n    }\n\n    function formatPercent(num) {\n      return (num * 100).toFixed(2).replace('.', ',') + '%';\n    }\n\n    \/* -------------------------------------------------------------\n     * INPUT HANDLING\n     * ------------------------------------------------------------- *\/\n    function setIncomePeriod(p) {\n      incomePeriod = p;\n      const mBtn = document.getElementById('periodMonthly');\n      const yBtn = document.getElementById('periodYearly');\n      const label = document.getElementById('incomePeriodLabel');\n      \n      if (p === 'monthly') {\n        mBtn.className = 'px-3 py-1 rounded-lg bg-brand-500 text-white font-semibold transition';\n        yBtn.className = 'px-3 py-1 rounded-lg text-slate-400 hover:text-white transition';\n        label.textContent = currentLang === 'de' ? 'EUR \/ MON' : 'EUR \/ MO';\n        document.getElementById('grossIncomeSlider').max = '12000';\n        document.getElementById('grossIncomeSlider').value = grossMonthly;\n        document.getElementById('grossIncomeInput').value = formatNumberPlain(grossMonthly);\n      } else {\n        yBtn.className = 'px-3 py-1 rounded-lg bg-brand-500 text-white font-semibold transition';\n        mBtn.className = 'px-3 py-1 rounded-lg text-slate-400 hover:text-white transition';\n        label.textContent = currentLang === 'de' ? 'EUR \/ JAHR' : 'EUR \/ YR';\n        document.getElementById('grossIncomeSlider').max = '144000';\n        document.getElementById('grossIncomeSlider').value = grossMonthly * 12;\n        document.getElementById('grossIncomeInput').value = formatNumberPlain(grossMonthly * 12);\n      }\n      updateCalculations();\n    }\n\n    function formatNumberPlain(num) {\n      return new Intl.NumberFormat('de-DE', { minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(num);\n    }\n\n    function parseGermanFloat(str) {\n      if (!str) return 0;\n      let clean = str.replace(\/[^\\d,\\.]\/g, '');\n      if (clean.includes(',') && clean.includes('.')) {\n        clean = clean.replace(\/\\.\/g, '').replace(',', '.');\n      } else if (clean.includes(',')) {\n        clean = clean.replace(',', '.');\n      }\n      const val = parseFloat(clean);\n      return isNaN(val) ? 0 : val;\n    }\n\n    function handleIncomeManualInput(val) {\n      const parsed = parseGermanFloat(val);\n      if (incomePeriod === 'monthly') {\n        grossMonthly = parsed;\n        document.getElementById('grossIncomeSlider').value = Math.min(parsed, 12000);\n      } else {\n        grossMonthly = parsed \/ 12;\n        document.getElementById('grossIncomeSlider').value = Math.min(parsed, 144000);\n      }\n      updateCalculations();\n    }\n\n    function handleSliderChange(val) {\n      const num = parseFloat(val);\n      if (incomePeriod === 'monthly') {\n        grossMonthly = num;\n        document.getElementById('grossIncomeInput').value = formatNumberPlain(num);\n      } else {\n        grossMonthly = num \/ 12;\n        document.getElementById('grossIncomeInput').value = formatNumberPlain(num);\n      }\n      updateCalculations();\n    }\n\n    function handleKasseSelect(val) {\n      const input = document.getElementById('zusatzRateInput');\n      if (val !== 'custom') {\n        input.value = parseFloat(val).toFixed(2);\n      }\n      updateCalculations();\n    }\n\n    function handleCustomZusatzInput(val) {\n      const select = document.getElementById('kasseSelect');\n      const foundMatch = Array.from(select.options).some(opt => opt.value === parseFloat(val).toFixed(2));\n      if (!foundMatch) {\n        select.value = 'custom';\n      }\n      updateCalculations();\n    }\n\n    function setChildrenCount(count) {\n      selectedChildren = count;\n      document.querySelectorAll('.child-btn').forEach(btn => {\n        const c = parseInt(btn.getAttribute('data-children'), 10);\n        if (c === count) {\n          btn.classList.add('bg-brand-500', 'text-white');\n          btn.classList.remove('hover:bg-slate-800');\n        } else {\n          btn.classList.remove('bg-brand-500', 'text-white');\n          btn.classList.add('hover:bg-slate-800');\n        }\n      });\n      document.getElementById('childrenCounterValue').textContent = count === 5 ? '5+ Kinder' : `${count} ` + (count === 1 ? 'Kind' : 'Kinder');\n      updateCalculations();\n    }\n\n    \/* -------------------------------------------------------------\n     * CORE CALCULATION ENGINE\n     * ------------------------------------------------------------- *\/\n    function updateCalculations() {\n      const empStatus = document.querySelector('input[name=\"empStatus\"]:checked').value;\n      const isSaxony = document.getElementById('stateSelect').value === 'saxony';\n      const isOver23 = document.getElementById('ageOver23').value === 'yes';\n      const zusatzRate = Math.max(0, parseFloat(document.getElementById('zusatzRateInput').value) || 0) \/ 100;\n\n      \/\/ Badges and visibility toggles\n      const selfNotice = document.getElementById('selfEmployedNotice');\n      if (empStatus === 'self_employed') {\n        selfNotice.classList.remove('hidden');\n      } else {\n        selfNotice.classList.add('hidden');\n      }\n\n      \/\/ Assessment base evaluation\n      let assessableIncome = grossMonthly;\n      if (empStatus === 'self_employed') {\n        assessableIncome = Math.max(MIN_ASSESSMENT_SELF_EMPLOYED, grossMonthly);\n      }\n      \/\/ Capped by statutory BBG\n      const cappedIncome = Math.min(assessableIncome, BBG_MONTHLY_2025);\n\n      \/\/ BBG Progress Bar\n      const bbgPercent = Math.min(100, (assessableIncome \/ BBG_MONTHLY_2025) * 100);\n      document.getElementById('bbgProgressBar').style.width = `${bbgPercent}%`;\n      document.getElementById('bbgCapText').textContent = `${bbgPercent.toFixed(1)}% (${formatCurrency(cappedIncome)})`;\n      \n      const bbgAlert = document.getElementById('bbgOverCapAlert');\n      if (assessableIncome > BBG_MONTHLY_2025 && empStatus !== 'student') {\n        bbgAlert.classList.remove('hidden');\n        document.getElementById('bbgProgressBar').classList.remove('from-teal-500', 'to-brand-400');\n        document.getElementById('bbgProgressBar').classList.add('bg-amber-400');\n      } else {\n        bbgAlert.classList.add('hidden');\n        document.getElementById('bbgProgressBar').classList.add('from-teal-500', 'to-brand-400');\n        document.getElementById('bbgProgressBar').classList.remove('bg-amber-400');\n      }\n\n      \/\/ PV Rates Calculation (PUEG rules)\n      \/\/ Base: 3.4%\n      \/\/ 0 children & age >= 23: +0.6% -> 4.0%\n      \/\/ 1 child: 3.4%\n      \/\/ 2 children: 3.4% - 0.25% = 3.15%\n      \/\/ 3 children: 3.4% - 0.50% = 2.90%\n      \/\/ 4 children: 3.4% - 0.75% = 2.65%\n      \/\/ 5+ children: 3.4% - 1.00% = 2.40%\n      let totalPvRate = PV_BASE_RATE;\n      let pvInfoNote = \"\";\n\n      if (selectedChildren === 0) {\n        if (isOver23) {\n          totalPvRate += PV_CHILDLESS_SURCHARGE; \/\/ 4.0%\n          pvInfoNote = currentLang === 'de' \n            ? \"Kinderlosenzuschlag aktiv (+0,60% = 4,00% Gesamt).\" \n            : \"Childless surcharge applied (+0.60% = 4.00% total).\";\n        } else {\n          pvInfoNote = currentLang === 'de'\n            ? \"Unter 23 Jahre: Kein Kinderlosenzuschlag (3,40% Gesamt).\"\n            : \"Under 23: No childless surcharge (3.40% total).\";\n        }\n      } else if (selectedChildren === 1) {\n        pvInfoNote = currentLang === 'de'\n          ? \"1 Kind: Standardbeitragssatz ohne Aufschlag (3,40% Gesamt).\"\n          : \"1 Child: Standard rate without penalty (3.40% total).\";\n      } else {\n        const discountSteps = Math.min(selectedChildren - 1, 4); \/\/ max 4 discount steps (up to 5 kids)\n        const totalDiscount = discountSteps * PV_CHILD_DISCOUNT;\n        totalPvRate -= totalDiscount;\n        pvInfoNote = currentLang === 'de'\n          ? `${selectedChildren} Kinder: Rabatt von ${(totalDiscount*100).toFixed(2).replace('.', ',')}% (Gesamt: ${(totalPvRate*100).toFixed(2).replace('.', ',')}%).`\n          : `${selectedChildren} Children: Discount of ${(totalDiscount*100).toFixed(2)}% (Total: ${(totalPvRate*100).toFixed(2)}%).`;\n      }\n\n      \/\/ Saxony adjustment:\n      \/\/ Standard state: Employer pays half of base rate = 1.70%\n      \/\/ Saxony: Employer pays 1.20% (0.5% less), Employee pays the difference\n      let pvEmployerRate = 0;\n      let pvEmployeeRate = 0;\n\n      if (empStatus === 'self_employed') {\n        pvEmployeeRate = totalPvRate;\n        pvEmployerRate = 0;\n      } else {\n        if (isSaxony) {\n          pvEmployerRate = 0.0120; \/\/ 1.20% fixed in Saxony\n          pvEmployeeRate = totalPvRate - pvEmployerRate;\n          pvInfoNote += currentLang === 'de'\n            ? \" Sonderfall Sachsen: AG tr\u00e4gt 1,20%, AN tr\u00e4gt den Rest.\"\n            : \" Saxony special rule: Employer pays 1.20%, Employee pays remainder.\";\n        } else {\n          pvEmployerRate = 0.0170; \/\/ 1.70% standard ER share\n          pvEmployeeRate = totalPvRate - pvEmployerRate;\n        }\n      }\n\n      document.getElementById('pvRuleExplanation').textContent = pvInfoNote;\n\n      \/\/ Zusatzbeitrag Half Share\n      const zusatzAnRate = empStatus === 'self_employed' ? zusatzRate : zusatzRate \/ 2;\n      const zusatzAgRate = empStatus === 'self_employed' ? 0 : zusatzRate \/ 2;\n      document.getElementById('zusatzHalfShare').textContent = empStatus === 'self_employed' \n        ? `${(zusatzRate*100).toFixed(2).replace('.',',')}% (100% AN)` \n        : `${(zusatzAnRate*100).toFixed(2).replace('.',',')}% AN \/ ${(zusatzAgRate*100).toFixed(2).replace('.',',')}% AG`;\n\n      \/\/ Rates for GKV Base\n      const gkvBaseAnRate = empStatus === 'self_employed' ? BASE_GKV_RATE : (BASE_GKV_RATE \/ 2); \/\/ 7.3% or 14.6%\n      const gkvBaseAgRate = empStatus === 'self_employed' ? 0 : (BASE_GKV_RATE \/ 2);             \/\/ 7.3% or 0%\n\n      \/\/ Financial Computations\n      let empGkvBaseMonthly = 0;\n      let empGkvZusatzMonthly = 0;\n      let empPvMonthly = 0;\n      let agGkvBaseMonthly = 0;\n      let agGkvZusatzMonthly = 0;\n      let agPvMonthly = 0;\n\n      if (empStatus === 'student') {\n        \/\/ Flat student rate calculation\n        empGkvBaseMonthly = STUDENT_BASE_GKV;\n        empGkvZusatzMonthly = (STUDENT_BASE_GKV \/ 0.14) * (zusatzRate); \/\/ student Zusatzbeitrag proportion\n        empPvMonthly = isOver23 && selectedChildren === 0 ? STUDENT_BASE_PV * (4.0 \/ 3.4) : STUDENT_BASE_PV;\n        agGkvBaseMonthly = 0;\n        agGkvZusatzMonthly = 0;\n        agPvMonthly = 0;\n      } else if (empStatus === 'midijob' && grossMonthly >= MIDIJOB_MIN && grossMonthly <= MIDIJOB_MAX) {\n        \/\/ Midijob \/ \u00dcbergangsbereich Formula (2025)\n        \/\/ Midijob assessment basis for employee scales up:\n        \/\/ F * 538 + ( (2000\/(2000-538)) - (538\/(2000-538))*F ) * (Gross - 538)\n        const factorF = MIDIJOB_FACTOR_F;\n        const diff = MIDIJOB_MAX - MIDIJOB_MIN;\n        const employeeFictionalGross = (factorF * MIDIJOB_MIN) + ( ((MIDIJOB_MAX \/ diff) - ((MIDIJOB_MIN \/ diff) * factorF)) * (grossMonthly - MIDIJOB_MIN) );\n\n        empGkvBaseMonthly = employeeFictionalGross * gkvBaseAnRate;\n        empGkvZusatzMonthly = employeeFictionalGross * zusatzAnRate;\n        empPvMonthly = employeeFictionalGross * pvEmployeeRate;\n\n        \/\/ Employer pays on actual gross\n        agGkvBaseMonthly = grossMonthly * gkvBaseAgRate;\n        agGkvZusatzMonthly = grossMonthly * zusatzAgRate;\n        agPvMonthly = grossMonthly * pvEmployerRate;\n      } else {\n        \/\/ Standard Employee or Self-Employed\n        empGkvBaseMonthly = cappedIncome * gkvBaseAnRate;\n        empGkvZusatzMonthly = cappedIncome * zusatzAnRate;\n        empPvMonthly = cappedIncome * pvEmployeeRate;\n\n        agGkvBaseMonthly = cappedIncome * gkvBaseAgRate;\n        agGkvZusatzMonthly = cappedIncome * zusatzAgRate;\n        agPvMonthly = cappedIncome * pvEmployerRate;\n      }\n\n      \/\/ Totals\n      const totalEmpGkvMonthly = empGkvBaseMonthly + empGkvZusatzMonthly;\n      const totalEmpMonthly = totalEmpGkvMonthly + empPvMonthly;\n      const totalEmpYearly = totalEmpMonthly * 12;\n\n      const totalAgGkvMonthly = agGkvBaseMonthly + agGkvZusatzMonthly;\n      const totalAgMonthly = totalAgGkvMonthly + agPvMonthly;\n      const totalFundMonthly = totalEmpMonthly + totalAgMonthly;\n\n      const totalEmpRate = gkvBaseAnRate + zusatzAnRate + pvEmployeeRate;\n      const totalAgRate = gkvBaseAgRate + zusatzAgRate + pvEmployerRate;\n\n      \/\/ Update Top Card Elements\n      document.getElementById('totalEmployeeMonthly').textContent = formatCurrency(totalEmpMonthly);\n      document.getElementById('totalEmployeePercent').textContent = formatPercent(totalEmpRate);\n      document.getElementById('cardEmpGkv').innerHTML = `${formatCurrency(totalEmpGkvMonthly)} <span class=\"text-xs font-normal text-slate-400 block\">GKV<\/span>`;\n      document.getElementById('cardEmpPv').innerHTML = `${formatCurrency(empPvMonthly)} <span class=\"text-xs font-normal text-slate-400 block\">PV<\/span>`;\n      \n      document.getElementById('cardAgGkv').innerHTML = `${formatCurrency(totalAgGkvMonthly)} <span class=\"text-xs font-normal text-slate-500 block\">GKV<\/span>`;\n      document.getElementById('cardAgPv').innerHTML = `${formatCurrency(agPvMonthly)} <span class=\"text-xs font-normal text-slate-500 block\">PV<\/span>`;\n\n      document.getElementById('totalCombinedMonthly').textContent = `${formatCurrency(totalFundMonthly)} \/ ${currentLang === 'de' ? 'Mon.' : 'mo.'}`;\n      document.getElementById('totalEmployeeYearly').textContent = `${formatCurrency(totalEmpYearly)} \/ ${currentLang === 'de' ? 'Jahr' : 'yr'}`;\n\n      \/\/ Update Breakdown Table\n      document.getElementById('tableGkvBaseAnM').textContent = formatCurrency(empGkvBaseMonthly);\n      document.getElementById('tableGkvBaseAnY').textContent = formatCurrency(empGkvBaseMonthly * 12);\n      \n      document.getElementById('tableZusatzRateAn').textContent = formatPercent(zusatzAnRate);\n      document.getElementById('tableZusatzAnM').textContent = formatCurrency(empGkvZusatzMonthly);\n      document.getElementById('tableZusatzAnY').textContent = formatCurrency(empGkvZusatzMonthly * 12);\n\n      document.getElementById('tablePvRateAn').textContent = formatPercent(pvEmployeeRate);\n      document.getElementById('tablePvAnM').textContent = formatCurrency(empPvMonthly);\n      document.getElementById('tablePvAnY').textContent = formatCurrency(empPvMonthly * 12);\n\n      document.getElementById('tableTotalRateAn').textContent = formatPercent(totalEmpRate);\n      document.getElementById('tableTotalAnM').textContent = formatCurrency(totalEmpMonthly);\n      document.getElementById('tableTotalAnY').textContent = formatCurrency(totalEmpYearly);\n\n      document.getElementById('tableTotalRateAg').textContent = formatPercent(totalAgRate);\n      document.getElementById('tableTotalAgM').textContent = formatCurrency(totalAgMonthly);\n      document.getElementById('tableTotalAgY').textContent = formatCurrency(totalAgMonthly * 12);\n\n      \/\/ Legends in chart\n      document.getElementById('chartLegendGkvBase').textContent = formatCurrency(empGkvBaseMonthly);\n      document.getElementById('chartLegendZusatz').textContent = formatCurrency(empGkvZusatzMonthly);\n      document.getElementById('chartLegendPv').textContent = formatCurrency(empPvMonthly);\n\n      \/\/ Re-render chart\n      updateChart(empGkvBaseMonthly, empGkvZusatzMonthly, empPvMonthly);\n    }\n\n    \/* -------------------------------------------------------------\n     * CHART.JS VISUALIZATION\n     * ------------------------------------------------------------- *\/\n    function updateChart(gkvBase, zusatz, pv) {\n      const ctx = document.getElementById('contributionDoughnut').getContext('2d');\n      \n      const chartData = {\n        labels: [\n          currentLang === 'de' ? 'GKV Grundbeitrag' : 'Base Health Rate',\n          currentLang === 'de' ? 'Kassen-Zusatzbeitrag' : 'Additional Rate',\n          currentLang === 'de' ? 'Pflegeversicherung (PV)' : 'Long-Term Care (PV)'\n        ],\n        datasets: [{\n          data: [\n            Math.max(0.01, gkvBase),\n            Math.max(0.01, zusatz),\n            Math.max(0.01, pv)\n          ],\n          backgroundColor: [\n            '#10b981', \/\/ emerald-500\n            '#2dd4bf', \/\/ teal-400\n            '#38bdf8'  \/\/ sky-400\n          ],\n          borderColor: '#0f172a',\n          borderWidth: 3,\n          hoverOffset: 6\n        }]\n      };\n\n      if (!chartInstance) {\n        chartInstance = new Chart(ctx, {\n          type: 'doughnut',\n          data: chartData,\n          options: {\n            responsive: true,\n            maintainAspectRatio: false,\n            cutout: '72%',\n            plugins: {\n              legend: { display: false },\n              tooltip: {\n                callbacks: {\n                  label: function(context) {\n                    return ` ${context.label}: ${formatCurrency(context.raw)}`;\n                  }\n                }\n              }\n            }\n          }\n        });\n      } else {\n        chartInstance.data = chartData;\n        chartInstance.update();\n      }\n    }\n\n    \/* -------------------------------------------------------------\n     * INITIALIZATION\n     * ------------------------------------------------------------- *\/\n    window.onload = function() {\n      \/\/ Set children count visual\n      setChildrenCount(0);\n      updateCalculations();\n    };\n  <\/script>\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>GKV &#038; PV Beitragsrechner | German Health Insurance Calculator \u00a7 GKV &#038; PV Beitragsrechner Gesetzliche Rechenwerte 2025\/2026 (BBG: 5.512,50 \u20ac \/ Mon.) DE EN Drucken 01. Besch\u00e4ftigungsstatus Angestellter Angestellter 50\/50 AG\/AN Selbstst\u00e4ndig 100% Eigenanteil \u00dcbergangsbereich 538 &#8211; 2.000 \u20ac Student Pauschalsatz Hinweis Selbstst\u00e4ndige: Sie tragen den vollen Beitrag (Arbeitnehmer + Arbeitgeberanteil) allein. Mindestbemessungsgrundlage 2025\/2026: ca. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kb_optimizer_status":1,"footnotes":""},"class_list":["post-1020","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/pages\/1020","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/comments?post=1020"}],"version-history":[{"count":1,"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/pages\/1020\/revisions"}],"predecessor-version":[{"id":1021,"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/pages\/1020\/revisions\/1021"}],"wp:attachment":[{"href":"https:\/\/srabons.de\/en\/wp-json\/wp\/v2\/media?parent=1020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}