*{box-sizing:border-box;margin:0;padding:0}html{width:100%;overflow-x:hidden}:root{--background: #ffffff;--foreground: #0a0a0a;--muted: #f4f4f5;--muted-foreground: #71717a;--border: #e4e4e7;--input: #ffffff;--ring: #0a0a0a;--primary: #0a0a0a;--primary-foreground: #ffffff;--secondary: #f4f4f5;--secondary-foreground: #0a0a0a;--accent: #f4f4f5;--accent-foreground: #0a0a0a;--destructive: #ef4444;--destructive-foreground: #ffffff;--card: #ffffff;--card-foreground: #0a0a0a;--radius: .75rem}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--foreground);line-height:1.6;padding:0;margin:0;min-height:100vh;width:100%;overflow-x:hidden}.input-section-wrapper{overflow:visible}.input-section{margin:0;padding:1.5rem;background:var(--card);border:1px solid #e5e7eb;border-radius:calc(.75rem - 2px);width:100%;box-sizing:border-box;overflow:hidden}.section-title{font-size:.75rem;font-weight:600;margin-bottom:0;margin-left:0;margin-right:0;padding:.5rem 1.5rem;background-color:transparent;color:#6b7280;text-transform:none;letter-spacing:.08em;border:none;width:100%;text-align:left}.row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;box-sizing:border-box}.row:not(:first-child){margin-top:24px}.field{margin-bottom:0;flex-shrink:1;min-width:0}label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--foreground)}.field select{padding-right:.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=range]{width:100%;height:8px;border-radius:4px;background:var(--muted);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--primary);cursor:pointer;border:3px solid var(--background);box-shadow:0 2px 4px #00000026;-webkit-transition:transform .1s ease,box-shadow .1s ease;transition:transform .1s ease,box-shadow .1s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #0003}input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--primary);cursor:pointer;border:3px solid var(--background);box-shadow:0 2px 4px #00000026;-moz-transition:transform .1s ease,box-shadow .1s ease;transition:transform .1s ease,box-shadow .1s ease}input[type=range]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 3px 6px #0003}.slider-container{display:flex;flex-direction:column;gap:.75rem;width:360px}.slider-labels{display:flex;justify-content:space-between;align-items:center;width:100%}.slider-label{font-size:.875rem;font-weight:500;color:var(--foreground);white-space:nowrap}.slider-label.right{text-align:right}.slider-wrapper{width:100%;position:relative}.card-group{display:flex;gap:.75rem;flex-wrap:wrap}.finanzierung-card{flex:1 1 200px;border:1px solid var(--border);padding:.75rem 1rem;cursor:pointer;text-align:left;min-height:2.5rem;display:flex;align-items:center;justify-content:flex-start;border-radius:calc(var(--radius) - 2px);background:var(--card);color:var(--card-foreground);font-size:.875rem;font-weight:500;transition:all .2s}.finanzierung-card:hover{background:var(--accent);border-color:var(--ring)}.finanzierung-card.selected{border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground)}.result-block{padding:0;margin:0;width:100%;box-sizing:border-box}.result-block-header{padding:0 0 .75rem;margin-bottom:1rem}.result-block h3{margin:0;font-size:1rem;font-weight:600;color:var(--foreground);letter-spacing:-.01em}.result-block-cashflow h3{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.result-block-content{padding:0;display:flex;flex-direction:column;gap:.5rem}.result-block-content>*{margin-top:0;margin-bottom:0}.result-block p{margin-bottom:.75rem;font-size:.875rem;line-height:1.6}.result-block strong{font-weight:600;color:var(--foreground)}.result-item{display:flex;justify-content:space-between;align-items:center;padding:.875rem 0;border-bottom:1px solid #f0f0f0}.result-item:last-child{border-bottom:none}.result-label{font-size:.875rem;color:var(--muted-foreground);font-weight:500}.result-value{font-size:.9375rem;font-weight:600;color:var(--foreground);text-align:right}.result-value.highlight{color:#0a0a0a;font-size:1rem;font-weight:700}.result-value.positive{color:#16a34a}.result-value.negative{color:#dc2626}.table-wrapper{overflow-x:auto;margin:1.5rem 0}.result-block-cashflow .table-wrapper{margin:0}.cashflow-table{border-collapse:collapse;width:100%;font-size:.875rem;margin:0;background:var(--card)}.cashflow-table-title-cell{vertical-align:middle;padding-right:1.5rem}.cashflow-table-title{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;display:inline-block;margin:0;line-height:1.5}.cashflow-table th,.cashflow-table td{padding:.5rem 0;text-align:left;border-bottom:1px solid #f0f0f0}.cashflow-table thead th{font-weight:500;color:var(--foreground);border-bottom:1px solid #f0f0f0;position:sticky;top:0;font-size:.75rem}.cashflow-table tbody td{font-size:.75rem;font-weight:500;color:var(--foreground)}.cashflow-table tbody td:not(:first-child){font-weight:600;font-size:.8125rem}.cashflow-table tbody tr.total-row{border-top:1px solid #f0f0f0}.cashflow-table tbody tr.total-row th{font-weight:500;font-size:.75rem;padding:.5rem 0;color:var(--foreground);border-bottom:none}.cashflow-table tbody tr.total-row th:not(:first-child){font-weight:600;font-size:.8125rem}.cashflow-table .positive{color:#16a34a;font-weight:600}.cashflow-table .negative{color:#dc2626;font-weight:600}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1.5rem}.summary-card{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem}.summary-card.highlight-card{background:transparent}.summary-label{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1.25rem;font-weight:700;color:var(--foreground)}.summary-value.large{font-size:1.5rem}.summary-value.positive{color:#16a34a}.summary-value.negative{color:#dc2626}.summary-value.highlight{color:#0a0a0a}.summary-note{font-size:.75rem;color:var(--muted-foreground);font-style:italic}.kpi-section{display:flex;flex-direction:column;gap:2rem}.cost-bar-container{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.cost-bar-container:last-child{margin-bottom:0}.cost-bar-title{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.cost-chart{display:flex;flex-direction:column;gap:.25rem}.chart-group-spacer{height:1.5rem}.chart-row{display:flex;align-items:center;gap:1.5rem;height:1.75rem;min-height:1.75rem}.chart-labels-section{display:contents}.chart-bars-section-mobile{display:none}.chart-label{font-size:.75rem;font-weight:500;color:var(--foreground);width:140px;flex-shrink:0;display:flex;align-items:center;gap:.5rem}.chart-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-value{font-size:.8125rem;font-weight:600;color:var(--foreground);white-space:nowrap;width:150px;flex-shrink:0;text-align:left}.chart-bar-container{display:flex;align-items:center;height:1.75rem;background:transparent;border-radius:calc(var(--radius) - 2px);overflow:hidden;position:relative;flex-shrink:0}.chart-bar-container.reference-width{width:400px;max-width:100%;flex:0 0 auto}.chart-bar-container.stacked{gap:0}.chart-bar{display:flex;align-items:center;justify-content:flex-start;padding:0;height:100%;position:relative;transition:width .3s ease;border-radius:calc(var(--radius) - 2px)}.chart-bar.right-aligned{justify-content:flex-start}.chart-bar-value{display:none}.brutto-bar,.beitrag-bar,.netto-bar{background:#e5e7eb}.verbrauch-bar{background:#60a5fa}.produktion-bar{background:#facc15}.eigenverbrauch-bar{background:#fef9c3}.einspeisung-bar{background:#e5e7eb}.autarkie-bar{background:#dbeafe}.netzbezug-bar{background:#e5e7eb}.chart-legend-dot.produktion-bar{background:#facc15}.chart-legend-dot.einspeisung-bar{background:#e5e7eb}.chart-legend-dot.eigenverbrauch-bar{background:#fef9c3}.chart-legend-dot.netzbezug-bar{background:#e5e7eb}.chart-legend-dot.verbrauch-bar{background:#60a5fa}.chart-legend-dot.autarkie-bar{background:#dbeafe}.energy-bar-container{display:flex;flex-direction:column;gap:.75rem;margin-bottom:0}.energy-bar-container:last-child{margin-bottom:0}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2rem}.kpi-card{display:flex;flex-direction:column;gap:.5rem;padding:0}.kpi-label{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.kpi-value{font-size:1.25rem;font-weight:700;color:var(--foreground);line-height:1.4}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-top:1rem}@media (max-width: 768px){.input-section{padding:1rem}.row{grid-template-columns:1fr;gap:16px}.results-grid{grid-template-columns:1fr}.result-item{flex-direction:column;align-items:flex-start;gap:.5rem}.result-value{text-align:left}.kpi-section{gap:1.5rem}.chart-labels-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.chart-row{flex-direction:row;align-items:center;gap:.75rem;height:auto;min-height:auto;padding-bottom:0;border-bottom:none}.chart-row>.chart-label{order:1;margin-bottom:0;width:auto;flex:0 0 auto}.chart-row>.chart-value{order:2;margin-bottom:0;width:auto;flex:0 0 auto}.chart-bar-mobile-hidden{display:none!important}.chart-bars-section-mobile{display:flex;flex-direction:column;gap:.25rem}.chart-bar-row-mobile{display:flex;flex-direction:column;gap:0}.chart-label-mobile{font-size:.75rem;font-weight:500;color:var(--foreground);display:flex;align-items:center;gap:.5rem}.chart-bars-section-mobile .chart-bar-container{width:100%;max-width:100%;height:1.5rem;display:flex;align-items:center}.chart-bars-section-mobile .chart-bar-container.reference-width{max-width:100%}.chart-label{min-width:auto;width:100%;font-size:.8125rem}.chart-value{font-size:.875rem;width:100%}.chart-bar-container{width:100%;max-width:100%;height:1.5rem}.chart-bar-container.reference-width{width:100%;max-width:100%}.chart-legend-dot{width:10px;height:10px}.slider-container{width:100%;max-width:100%}.kpi-row{grid-template-columns:1fr;gap:1.5rem}.kpi-value{font-size:1.125rem}.summary-cards{grid-template-columns:1fr}.table-wrapper{margin:1rem 0}.cashflow-table th,.cashflow-table td{padding:0;font-size:.8125rem}.zusammenfassung-items{flex-direction:column;gap:1rem}}.zusammenfassung-section{margin-top:0;padding-top:0;border-top:none}.zusammenfassung-title{font-size:.75rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.zusammenfassung-items{display:flex;flex-direction:row;gap:2rem;flex-wrap:wrap}.zusammenfassung-item{display:flex;flex-direction:column;gap:.5rem}.zusammenfassung-label{font-size:.875rem;color:var(--foreground);font-weight:400;line-height:1.6}.zusammenfassung-value-inline{color:var(--foreground);font-weight:600;margin:0 .25rem}.zusammenfassung-value{font-size:1rem;font-weight:600;color:var(--foreground)}.zusammenfassung-calculation{font-size:.8125rem;color:var(--muted-foreground);font-family:Courier New,monospace;margin-top:.25rem}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-8{margin-top:2rem}.box-border{box-sizing:border-box}.flex{display:flex}.table{display:table}.grid{display:grid}.h-10{height:2.5rem}.w-full{width:100%}.max-w-\[1000px\]{max-width:1000px}.max-w-\[792px\]{max-width:792px}.max-w-full{max-width:100%}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.gap-0{gap:0px}.gap-8{gap:2rem}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0\.5{padding:.125rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-4{padding-top:1rem;padding-bottom:1rem}.text-left{text-align:left}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.tracking-tight{letter-spacing:-.025em}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb}#root{min-height:100vh;display:flex;justify-content:center;width:100%}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.focus\:border-black:focus{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-black:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-20:focus{--tw-ring-opacity: .2}@media (min-width: 640px){.sm\:mt-12{margin-top:3rem}.sm\:gap-12{gap:3rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}}
