body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}nav{background-color:#282c34;padding:1rem}nav ul{display:flex;gap:2rem;list-style-type:none;margin:0;padding:0}nav a{border-radius:5px;color:#fff;font-weight:700;padding:.5rem 1rem;text-decoration:none}nav a:hover{background-color:#ffffff1a;text-decoration:underline}.test-setup-container{margin:2rem auto;max-width:800px;padding:0 1rem}.test-setup-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.test-setup-card h2{color:#333;font-size:1.5rem;margin-bottom:1rem}.test-setup-card h3{color:#333;font-size:1.2rem;margin:1.5rem 0 1rem}.setup-description{color:#666;margin-bottom:2rem}.test-setup-form{gap:1.5rem}.form-group,.test-setup-form{display:flex;flex-direction:column}.form-group{flex:1 1;gap:.5rem}.form-row{display:flex;gap:1rem;width:100%}@media (max-width:600px){.form-row{flex-direction:column}}label{color:#555;font-size:.9rem;font-weight:500}input{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s}input:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a;outline:none}input::placeholder{color:#aaa}.submit-button{background-color:#4a90e2;border-radius:6px;margin-top:1rem;padding:1rem}.submit-button:hover{background-color:#357abd}.submit-button:active{background-color:#2d6aa3}.styled-select{background:#fff;border:1px solid #ddd;border-radius:6px;color:#222;font-size:1rem;padding:.75rem;transition:border-color .2s}.styled-select:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a;outline:none}.monthly-payments-grid{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.monthly-payment-row{background:#f8f9fa;border:1px solid #eee;border-radius:6px;padding:1rem}.month-label{color:#333;font-weight:500;margin-bottom:.5rem}.monthly-payment-row .form-row{margin-top:.5rem}.monthly-payment-row .form-group{margin-bottom:0}.monthly-payment-row input{background:#fff}.set-all-months{background:#e8f4ff;border:1px solid #cce5ff;border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.set-all-months .form-row{margin-bottom:0}.set-all-months label{color:#2c5282}.set-all-months input{border-color:#90cdf4}.set-all-months input:focus{border-color:#4299e1;box-shadow:0 0 0 2px #4299e11a}.billing-document{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;color:#222;font-family:Inter,Segoe UI,Arial,sans-serif;margin:2rem auto;max-width:800px;padding:2rem 2.5rem}.billing-header{color:#1e7d4d;font-size:2.2rem;font-weight:700;letter-spacing:.02em;margin-bottom:2rem;text-align:center}.billing-section{margin-bottom:2.2rem}.billing-section h2{border-left:4px solid #1e7d4d;color:#1e7d4d;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-left:.5rem}.billing-field{display:flex;flex-wrap:wrap;font-size:1rem;margin-bottom:.5rem}.billing-label{color:#444;font-weight:500;min-width:220px}.billing-value{color:#222;font-weight:400}.billing-placeholder{color:#bbb;font-style:italic}.energy-mix-label{color:#222;font-size:1rem;font-weight:500;min-width:160px}.energy-mix-row{align-items:center;display:flex;margin-bottom:.2rem}.energy-mix-bar{background:#f2f2f2;border-radius:8px;box-shadow:0 1px 4px #1e7d4d12;display:flex;height:32px;margin-left:1rem;overflow:hidden;width:340px}.energy-mix-bar>div{align-items:center;color:#fff;display:flex;font-size:.95rem;font-weight:600;height:100%;justify-content:center;transition:width .3s;white-space:nowrap}.energy-mix-pv{background:gold;color:#222}.energy-mix-rest{background:#2196f3;color:#fff}.energy-mix-renew{background:#2e7d32;color:#fff}.energy-mix-renew2{background:#66bb6a;color:#fff}.energy-mix-nichtEEG{background:#81c784;color:#fff}.energy-mix-coal{background:#dc143c;color:#fff}.energy-mix-gas{background:#ff1744;color:#fff}.energy-mix-nuclear{background:#d50000;color:#fff}.energy-mix-other{background:#b71c1c;color:#fff}.energy-mix-info{color:#333;display:flex;flex-direction:column;font-size:.98rem;margin-top:1.2rem}.energy-mix-info>div{margin-bottom:.3rem}@media (max-width:600px){.billing-document{padding:1rem .5rem}.energy-mix-bar{min-width:180px;width:100%}.billing-label{min-width:120px}.energy-mix-label{font-size:.95rem;min-width:90px}}.energy-mix-compare{display:flex;flex-direction:column;gap:.5rem}.energy-mix-impact-header{align-items:flex-end;display:flex;font-size:.95rem;font-weight:600;gap:0;margin-bottom:.2rem;margin-left:170px}.energy-mix-impact-header-spacer{display:inline-block;width:340px}.impact-label,.impact-value{color:#dc143c;display:inline-block;font-weight:600;text-align:center;width:120px}.impact-value{color:#222;font-size:1rem;font-weight:500;margin-left:0}.energy-mix-legend{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px;margin-left:175px;margin-top:4px}.legend-item{align-items:center;color:#222;display:flex;font-size:.75rem}.legend-color{border-radius:2px;display:inline-block;height:12px;margin-right:4px;vertical-align:middle;width:16px}.reststrom-caption{color:#2196f3;font-size:.75rem;font-weight:500;margin-bottom:.7rem;margin-left:175px}.consumption-compare{margin:1.2rem 0 1.5rem;max-width:500px}.consumption-bar-row{align-items:center;display:flex;margin-bottom:.5rem}.consumption-label{color:#222;font-size:.95rem;font-weight:500;margin-right:.5rem;width:110px}.consumption-bar{align-items:center;background:#f2f2f2;border-radius:8px;display:flex;height:28px;margin-left:20px;overflow:hidden;width:300px}.consumption-bar-current{background:#263238}.consumption-bar-current,.consumption-bar-last{align-items:center;border-radius:8px 0 0 8px;color:#fff;display:flex;font-weight:600;height:100%;padding-left:8px}.consumption-bar-last{background:#90a4ae}.consumption-bar-avg{align-items:center;background:#cfd8dc;border-radius:8px 0 0 8px;color:#222;display:flex;font-weight:600;height:100%;padding-left:8px}.energy-mix-rest-blue1{background:#2196f3}.energy-mix-rest-blue2{background:#42a5f5}.energy-mix-rest-blue3{background:#64b5f6}.energy-mix-rest-blue4{background:#90caf9}.cost-breakdown-table{border-collapse:collapse;font-size:.95em;margin:1em 0;width:100%}.cost-breakdown-table th{background-color:#f5f5f5;border-bottom:2px solid #1e7d4d;color:#1e7d4d;font-size:.9em;font-weight:600;padding:.8em 1em;text-align:left}.cost-breakdown-table th:last-child{text-align:right}.cost-breakdown-table td{border-bottom:1px solid #e0e0e0;padding:.5em 1em}.cost-breakdown-table td:first-child{color:#333;font-weight:500}.cost-breakdown-table .cost-value{color:#1e7d4d!important;font-family:Courier New,monospace;text-align:right}.cost-breakdown-table .total-row{background-color:#f8f8f8;font-weight:700}.cost-breakdown-table .total-row td{border-bottom:2px solid #1e7d4d;font-weight:700;padding-bottom:.8em;padding-top:.8em}.cost-breakdown-table .total-row td:first-child{color:#1e7d4d}.cost-breakdown-table .netto-row{background-color:#f8f8f8;font-weight:500}.cost-breakdown-table .netto-row td:first-child{color:#1e7d4d}.price-components-section{margin-top:2rem}.price-components-section h3{color:#1e7d4d;font-size:1.1em;font-weight:600;margin-bottom:1em}.price-components-description{color:#666;font-size:.95em;font-style:italic;margin:.5rem 0 1rem}.owner-info-grid{grid-gap:2rem;background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:1rem 0;padding:1.5rem}.owner-info-banking,.owner-info-legal,.owner-info-main{display:flex;flex-direction:column;gap:1rem}.owner-info-banking .billing-field,.owner-info-legal .billing-field,.owner-info-main .billing-field{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:.5rem}.owner-info-banking .billing-label,.owner-info-legal .billing-label,.owner-info-main .billing-label{color:#2c3e50;font-weight:600}.owner-info-banking .billing-value,.owner-info-legal .billing-value,.owner-info-main .billing-value{color:#34495e}@media (max-width:768px){.owner-info-grid{gap:1rem;grid-template-columns:1fr}}.letter-section{background:#fff9f0;border:1px solid #e8d9c5;border-radius:8px;box-shadow:0 2px 8px #0000000a;font-family:inherit;margin-bottom:2rem;padding:2rem}.auth-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:2rem auto;max-width:400px;padding:2rem}.auth-subtitle{margin-bottom:1.5rem}.google-button{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.google-button:hover{background-color:#f8f8f8}.divider{margin:1rem 0;position:relative;text-align:center}.divider:after,.divider:before{background-color:#ddd;content:"";height:1px;position:absolute;top:50%;width:45%}.divider:before{left:0}.divider:after{right:0}.auth-form{gap:1rem}.auth-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:12px;width:100%}.auth-input:focus{border-color:#007bff;outline:none}.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-label{align-items:center;color:#666;display:flex;font-size:.9rem;gap:8px}.error-message{background-color:#fff;border-radius:4px;color:#dc3545;font-size:.875rem;padding:.5rem}.submit-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.submit-button:hover{background-color:#0056b3}.toggle-auth{color:#007bff;cursor:pointer;font-size:.9rem;margin-top:1rem;text-align:center}.toggle-auth:hover{text-decoration:underline}.text-button{padding:0}.form-footer{margin-top:1rem;text-align:center}.success-message{background-color:#d4edda;border-radius:4px;color:#28a745;margin-bottom:1rem;padding:.75rem}.auth-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:2rem}.auth-title{color:#333;margin-bottom:1rem;text-align:center}.auth-subtitle{color:#666;margin-bottom:2rem;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.success-container{text-align:center}.success-container .submit-button{margin-top:2rem}.text-button{background:none;border:none;color:#4a90e2;cursor:pointer;font:inherit;margin-top:1rem;padding:.5rem;text-decoration:underline}.text-button:hover{color:#357abd}.dashboard-container{margin:2rem auto;max-width:800px;padding:0 1rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.user-info{margin:1rem 0}.progress-steps{display:flex;flex-direction:column;gap:1rem}.progress-step{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:1rem;opacity:.5;padding:1rem}.progress-step.active{background:#e3f2fd;opacity:1}.progress-step.completed{background:#e8f5e9;opacity:1}.step-number{align-items:center;background:#4a90e2;border-radius:50%;color:#fff;display:flex;font-weight:700;height:32px;justify-content:center;width:32px}.step-title{flex:1 1;font-weight:500}.logout-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.logout-button:hover{background:#c82333}@media (max-width:768px){.progress-step{flex-direction:column;padding:1.5rem;text-align:center}.submit-button{width:100%}}.dashboard-content{margin-top:2rem}@media (max-width:768px){.dashboard-header{flex-direction:column;gap:1rem;text-align:center}.dashboard-container{padding:1rem}}.dashboard-actions,.dashboard-status{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:2rem;padding:1.5rem}.action-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.upgrade-prompt{background-color:#f8f9fa;border-radius:4px;margin-top:1.5rem;padding:1rem;text-align:center}.upgrade-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.75rem 1.5rem}.dashboard-loading{align-items:center;color:#666;display:flex;font-size:1.2rem;justify-content:center;min-height:100vh}.progress-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:2rem}.step-action{background:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:background-color .2s}.step-action:hover{background:#357abd}.billing-preview{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem;text-align:center}.preview-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.preview-button:hover{background:#218838}.timeline-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1.5rem}.timeline{align-items:center;display:flex;justify-content:space-between;padding:0 1rem;position:relative}.timeline:before{background:#e0e0e0;content:"";height:2px;left:0;position:absolute;right:0;top:50%;z-index:1}.timeline-step{align-items:center;cursor:default;display:flex;flex-direction:column;gap:.5rem;opacity:.5;position:relative;z-index:2}.timeline-step.active,.timeline-step.completed{opacity:1}.timeline-step.clickable{cursor:pointer}.timeline-step.clickable:hover{background-color:#e8f0fe}.timeline-step.disabled{cursor:not-allowed;opacity:.5}.timeline-step.disabled:hover:after{background:#000c;border-radius:4px;bottom:-30px;color:#fff;content:"Bitte füllen Sie zuerst die vorherigen Schritte aus";font-size:12px;left:50%;padding:5px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap}.timeline-number{align-items:center;background:#fff;border:2px solid #4a90e2;border-radius:50%;color:#4a90e2;display:flex;font-weight:700;height:32px;justify-content:center;width:32px}.timeline-step.active .timeline-number{background:#4a90e2;color:#fff}.timeline-step.completed .timeline-number{background:#28a745;border-color:#28a745;color:#fff}.timeline-step:not(.completed):not(.active) .timeline-number{background:#fff;border-color:#4a90e2;color:#4a90e2}.timeline-label{color:#333;font-size:.875rem;font-weight:500;text-align:center}.timeline-step.current .timeline-number{border-color:#222;color:#222;font-weight:700}.timeline-step.current .timeline-label{color:#222;font-weight:700}.timeline-step.clickable:not(.current):not(.completed) .timeline-number{border-color:#357abd;color:#357abd}.timeline-step.active{background:none}.timeline-step.current.completed .timeline-number{background:#28a745;border-color:#28a745;color:#fff}@media (max-width:768px){.timeline{flex-direction:column;gap:1.5rem}.timeline:before{bottom:0;height:auto;left:16px;top:0;width:2px}.timeline-step{flex-direction:row;gap:1rem;width:100%}.timeline-label{text-align:left}}
/*# sourceMappingURL=main.75b1cf00.css.map*/