:root{--ink:#1d1d1f;--muted:#6e6e73;--green:#0066cc;--lime:#dbeeff;--cream:#f5f5f7;--line:#d2d2d7;--orange:#0066cc}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px var(--font)}header{height:84px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fbfbfd}.brand{display:flex;gap:10px;align-items:center;font-size:25px;font-weight:700;color:var(--ink);text-decoration:none}.light{font-weight:400;color:var(--muted)}.tag,.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}button{cursor:pointer;background:transparent;color:var(--ink);border:1px solid #d2d2d7;border-radius:8px;padding:11px 15px;font:600 12px var(--font)}button:hover{background:#e8f2ff}button:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid #0066cc;outline-offset:3px}.primary{background:var(--ink);border-color:var(--ink);color:white}.primary:hover{background:var(--green)}main{max-width:1480px;padding:38px 4.5% 20px;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 30px}h1{font:600 clamp(28px,3vw,42px) var(--font);letter-spacing:-1.6px;margin:10px 0 9px}h2{font:600 24px var(--font);letter-spacing:-.7px;margin:8px 0}h3{font-size:16px;margin:0 0 8px}p{color:var(--muted);line-height:1.65;margin:8px 0 16px}.intro-actions{display:flex;gap:8px}.workspace{display:grid;grid-template-columns:1.7fr 1fr;gap:20px}.house-card,.config-card,.panel{background:#ffffff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.card-top{display:flex;justify-content:space-between;align-items:center;padding:24px 27px 0}.card-top p{font-size:12px;margin-bottom:5px}.card-top h2{font-size:20px}.pill{background:#e8f2ff;padding:7px 11px;border-radius:30px;font-size:10px}.house-card svg{display:block;width:100%;max-height:450px}.house-card svg text{font:12px var(--font);fill:#566952}.house-card svg .room{font-size:9px;letter-spacing:1px;fill:#8d9883}.house-card svg .smallroom{font-size:7px;letter-spacing:.5px}.leader{stroke:#9faa91;stroke-width:1;fill:none}svg [data-part]{cursor:pointer;transition:filter .15s}svg [data-part]:hover,svg [data-part].selected{filter:drop-shadow(0 0 5px #db9b40)}svg [data-part].changed>path:first-child{stroke:#3b8f65}.house-bottom{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding:0 24px 18px;gap:12px}.house-bottom i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#bfa27b;margin-right:5px}.part-tabs{border-top:1px solid var(--line);padding:14px 20px;display:flex;flex-wrap:wrap;gap:6px}.part-tabs button{font-size:10px;padding:8px 10px;border-radius:20px}.part-tabs button.active{background:var(--ink);color:white}.config-card{padding:27px}.detail{font-size:12px;min-height:60px}.option{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;margin:8px 0;padding:14px 13px;border-radius:9px;font-weight:500}.option.active{background:#e8f2ff;border:1.5px solid #0066cc}.option strong{font-size:17px;padding-left:10px}.option span{max-width:75%}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:19px}label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600}label small{font-weight:400;color:var(--muted);font-size:10px}input,select{width:100%;min-width:0;background:#ffffff;border:1px solid #d2d2d7;border-radius:7px;padding:10px;color:var(--ink);font:14px var(--font)}input:focus,select:focus{outline:2px solid #0066cc}.hint{font-size:11px;line-height:1.6;margin:12px 0}details{border-top:1px solid var(--line);padding:15px 0}summary{cursor:pointer;font-weight:600;font-size:12px}.part-effect{background:#f5f5f7;border-radius:10px;display:flex;align-items:center;justify-content:space-between;padding:16px;gap:15px;margin-top:8px}.part-effect span{font-size:11px;max-width:170px}.part-effect strong{font-size:25px}.results{margin:34px 0 22px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:22px;background:#ffffff;border:1px solid var(--line);border-radius:12px}.metric:first-child{background:var(--ink);color:white;border-color:var(--ink)}.metric .label{font-size:11px;opacity:.75;display:block;margin-bottom:17px}.metric strong{font:600 29px var(--font);letter-spacing:-1px}.metric .unit{font-size:11px;padding-left:4px}.metric .sub{display:block;font-size:10px;margin-top:10px;opacity:.75}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.panel{padding:27px;margin-bottom:20px}.results-grid .panel{margin:0}.panel>p{font-size:12px}.bar-label{display:flex;justify-content:space-between;font-size:12px;margin:18px 0 8px}.bar-track{height:18px;background:#ededf0;border-radius:4px}.bar-fill{height:100%;border-radius:4px;min-width:1px}.bar-base{background:#aaaab0}.bar-target{background:#0066cc}.loss-row{display:flex;justify-content:space-between;font-size:11px;border-bottom:1px solid #e5e5ea;padding:8px 0}#losses{margin-top:22px}.step{display:grid;grid-template-columns:42px 1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid #e5e5ea;font-size:12px;align-items:center}.step small{font-size:10px;color:var(--muted)}.step-year{border-radius:30px;background:#e8f2ff;text-align:center;padding:7px 3px;font-size:10px}.settings-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:22px 0}.prices{grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding-top:24px}.period{display:flex;gap:5px}.period button.active{background:var(--ink);color:white}.narrow{max-width:470px}.cost-layout{display:grid;grid-template-columns:2fr 1fr;gap:30px;align-items:center;margin:25px 0}.legend{display:flex;gap:20px;font-size:11px;color:#86868b}.legend span+span{color:#0066cc}#chart svg{width:100%;height:auto;display:block}#chart text{font:11px Arial;fill:#6e6e73}.cost-summary{background:#e8f2ff;padding:25px;border-radius:13px}.cost-summary strong{display:block;font:600 36px var(--font);letter-spacing:-1px;margin:12px 0}.cost-summary p{font-size:12px}.cost-pair{display:flex;justify-content:space-between;font-size:12px;margin:12px 0}.table-scroll{max-height:350px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;margin-top:15px}th,td{padding:10px;text-align:right;border-bottom:1px solid var(--line)}th:first-child,td:first-child{text-align:left}.formula{background:#f5f5f7;padding:20px;border-radius:8px;margin-top:15px;line-height:2;font:14px/2 monospace}details p{font-size:12px}.sources{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.8}.sources li{margin:7px 0}a{color:var(--green)}footer{display:flex;justify-content:space-between;gap:20px;padding:15px 0;color:var(--muted);align-items:center}footer small{font-size:10px}footer button{font-size:10px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 22px;border-radius:9px;display:none}@media(max-width:1050px){header .tag{display:none}.intro{display:block}.intro-actions{margin-top:20px}.workspace{grid-template-columns:1.3fr 1fr}.config-card{padding:20px}.settings-grid{grid-template-columns:repeat(3,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){main{padding:22px 16px}header{padding:0 16px;height:70px}.brand{font-size:20px}.workspace,.results-grid,.cost-layout{grid-template-columns:1fr}.card-top{padding:18px}.house-bottom{font-size:9px}.metrics{gap:8px}.metric{padding:17px}.metric strong{font-size:25px}.settings-grid,.prices{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start}.section-head>.tag{display:none}.panel{padding:20px}footer{display:block}footer>div{margin-top:15px}.detail{min-height:0}.cost-summary strong{font-size:32px}}@media print{header button,.intro-actions,.part-tabs,footer button,#toast{display:none!important}body{background:white;font-size:11px}main{padding:0;max-width:none}.workspace{grid-template-columns:1.4fr 1fr}.panel,.house-card,.config-card,.metric{break-inside:avoid}.settings-grid{grid-template-columns:repeat(4,1fr)}.metrics{grid-template-columns:repeat(4,1fr)}input,select{border:0;padding:3px}.house-card svg{max-height:300px}h1{font-size:28px}details:not([open]){display:none}}

/* Brand tokens from isv-baumann.de, theme 1.0.8. */
:root{--font:-apple-system,BlinkMacSystemFont,'SF Pro Display','SF Pro Text','Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif}body{-webkit-font-smoothing:antialiased;letter-spacing:-.015em}header{background:rgba(251,251,253,.94)}.brand{font-size:17px;letter-spacing:.06em}.brand-stack{display:flex;flex-direction:column;gap:4px}.brand-stack small{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}.house-card,.config-card,.panel{border-radius:28px;border-color:#e5e5ea}.metric{border-radius:22px}.metric:first-child{background:#2b2d2f}.primary{background:#0066cc;border-color:#0066cc;border-radius:980px}.primary:hover{background:#0055ab}.intro-actions button,header button{border-radius:980px}h1{font-weight:700;letter-spacing:-.04em}h2{font-weight:600}.pill{color:#0066cc}.option.active{background:#e8f2ff;border-color:#0066cc}.part-tabs button.active,.period button.active{background:#0066cc;border-color:#0066cc}.cost-summary strong{color:#0066cc}.legend span+span{color:#0066cc}.house-bottom i{background:#0066cc}.house-bottom{line-height:1.5}.house-bottom span:last-child{text-align:right}#model-stage{height:470px;position:relative;background:radial-gradient(ellipse at 50% 55%,#fff 0%,#f5f5f7 75%);margin:14px 0 18px;overflow:hidden}#house3d{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#house3d:active{cursor:grabbing}#house3d:focus-visible{outline:2px solid #0066cc;outline-offset:-3px}.model-caption{position:absolute;left:22px;top:17px;pointer-events:none;display:flex;flex-direction:column;gap:5px;font-size:11px}.model-caption span{font-weight:600}.model-caption small{color:#86868b;font-size:10px}.model-controls{position:absolute;bottom:16px;left:16px;right:16px;display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.model-controls button{background:rgba(255,255,255,.95);border-color:#d2d2d7;border-radius:30px;padding:9px 12px;font-size:11px;box-shadow:0 2px 8px #00000005}.model-controls button[aria-pressed=true]{background:#0066cc;color:#fff;border-color:#0066cc}#model-tip{position:absolute;top:17px;right:20px;max-width:45%;border-radius:20px;background:#fff;padding:7px 12px;color:#0066cc;font-size:11px;pointer-events:none;border:1px solid #dceafa}.model-error{position:absolute;inset:70px 24px;display:grid;place-content:center;text-align:center;line-height:1.8;color:#6e6e73;background:#f5f5f7;border-radius:20px;padding:24px}.config-card h2{scroll-margin-top:30px}@media(max-width:760px){#model-stage{height:400px}.model-caption{left:14px}.model-controls{left:8px;right:8px}.model-controls button{padding:10px 12px}.house-bottom{padding:0 18px 18px}.house-bottom span{max-width:50%}.house-card,.config-card,.panel{border-radius:22px}}@media print{#model-stage{height:350px}.model-controls{display:none}#model-tip{display:none}}
.heating-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.linked-heat{display:flex;gap:24px;flex-wrap:wrap;background:#f5f5f7;padding:20px;border-radius:16px;margin:18px 0}.linked-heat>div{flex:1;min-width:190px}.linked-heat small{display:block;font-size:11px;color:var(--muted);line-height:1.6}.linked-heat strong{display:block;font-size:20px;margin:7px 0}textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;font:13px var(--font);margin:10px 0}button:disabled{cursor:default;opacity:.55}input:disabled{background:#f5f5f7;color:#6e6e73}.part-tabs button{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-color:#d2d2d7;border-radius:12px}.part-tabs button i{background:var(--part-color);width:10px;height:10px;border-radius:50%;display:inline-block}.part-tabs button small{font-size:9px;color:var(--muted)}.part-tabs button.active{background:#fff;color:var(--ink);border-color:var(--part-color);box-shadow:inset 0 0 0 1px var(--part-color)}.part-tabs button.changed{border-left:5px solid var(--part-color)}.part-tabs button.changed small{font-weight:700;color:var(--part-color)}.config-card{border-top:5px solid var(--part-color,#0073cf)}.config-card .option.active{border-color:var(--part-color);background:color-mix(in srgb,var(--part-color) 9%,white)}.config-card .option.active strong{color:var(--part-color)}.config-card .part-status{color:var(--part-color);font-weight:600;font-size:12px;margin:10px 0}.config-card .part-effect{border-left:4px solid var(--part-color)}.color-hint{font-size:10px;line-height:1.6;padding:0 22px 12px;margin:0}#heaterComparison td:first-child{text-align:left}#heaterComparison button{padding:7px 10px;font-size:10px}@media(max-width:1000px){.heating-grid{grid-template-columns:1fr 1fr}}@media(max-width:500px){.heating-grid{grid-template-columns:1fr 1fr}.linked-heat{gap:10px}#heaterComparison{font-size:10px}#heaterComparison td{padding:8px 3px}}
/* Muted component families: light existing state, medium and dark renovation levels. */
.config-card .option,.config-card .option.active,.config-card .option:hover{background:var(--option-color,var(--part-color));color:#1d1d1f;border:2px solid transparent;gap:10px;min-height:58px}
.config-card .option.active{border-color:var(--part-ink);box-shadow:0 0 0 1px var(--part-ink)}
.config-card .option:hover{border-color:var(--part-ink)}
.config-card .option:focus-visible{outline:3px solid var(--part-ink);outline-offset:4px}
.config-card .option strong,.config-card .option.active strong{color:#1d1d1f;margin-left:auto}
.config-card .option .option-mark{display:flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;border:1.5px solid var(--part-ink);border-radius:50%;font-size:14px;color:var(--part-ink)}
.config-card .option.active .option-mark{background:var(--part-ink);color:white}
.config-card .option .option-label{flex:1;text-align:left;max-width:none}
.config-card .part-status{color:var(--part-ink)}
.part-tabs button.active{background:color-mix(in srgb,var(--part-color) 28%,white);border-color:var(--part-ink);box-shadow:inset 0 0 0 1px var(--part-ink)}
.part-tabs button.changed small{color:var(--part-ink)}
.part-tabs button:focus-visible{outline-color:var(--part-ink)}
/* Guided building palette */
[hidden]{display:none!important}.model-palette{margin-bottom:24px}.palette-actions{display:flex;gap:10px;flex-wrap:wrap}.model-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:24px 0 12px}.model-grid label{min-width:0}.model-grid select{width:100%;text-overflow:ellipsis}.model-note{font-size:13px;color:#6e6e73;align-self:center}.geometry-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 0}.geometry-summary small,.geometry-summary strong{display:block}.geometry-summary small{font-size:12px;color:#6e6e73;margin-bottom:7px}.geometry-summary strong{font-size:20px}.model-palette .section-head{margin-bottom:0}input[readonly]{background:#f5f5f7;color:#6e6e73}.option:disabled{opacity:.5;cursor:not-allowed}.house-bottom>span:first-child{display:flex;align-items:center}.house-bottom>span:first-child span{display:inline}
@media(max-width:1000px){.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.model-palette .section-head{display:block}.palette-actions{margin-top:15px}.model-grid{grid-template-columns:1fr}.geometry-summary{grid-template-columns:1fr 1fr}.geometry-summary strong{font-size:17px}}
@media print{#modelControls{display:block!important}.palette-actions{display:none}}
.uba-note{padding:18px 22px;background:#edf3f7;border-radius:10px;margin:20px 0}.uba-note p:last-child{margin-bottom:0}
.purpose{margin-bottom:24px;border-top:3px solid #8ca783}.purpose>p{max-width:1050px}.purpose-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:22px 0}.purpose-benefits span{color:#6e6e73;line-height:1.6}.purpose-benefits strong{display:block;color:#1d1d1f;margin-bottom:5px}.model-disclaimer{padding:16px 20px;border-radius:8px;background:#f1f4ef;font-size:13px}.model-disclaimer strong{display:block;color:#3f5441;margin-bottom:6px}.result-note{font-size:13px;line-height:1.65}.sensitivity{margin:20px 0}.sensitivity summary{font-weight:600}@media(max-width:650px){.purpose-benefits{grid-template-columns:1fr;gap:12px}}

.part-inputs>label>input{margin-top:auto}
/* Ergänzungen isv-baumann.de: Beginnjahr, BEG-Hinweise, Rechtslinks */
.period{align-items:center;flex-wrap:wrap}
.start-year{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;margin-right:.5rem}
.start-year input{width:5.5rem}
.period .start-year{flex-direction:row;margin:0 .5rem 0 0}
.period .start-year input,.period button{height:40px;box-sizing:border-box;margin:0}
.period .start-year input{padding:0 10px}
.period-note{margin:.25rem 0 .75rem}
.option-label small.beg{display:block;font-size:.72rem;font-weight:600;margin-top:.15rem}
.option-label small.beg-ok{color:#2f6b2f}
.option-label small.beg-no{color:#8a5a00}
.beg-status{font-size:.85rem;line-height:1.45;margin:.5rem 0 0;padding:.55rem .7rem;border-left:3px solid var(--part-ink,#4c6248);background:rgba(0,0,0,.03)}
.legal-links{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:.35rem;font-size:.8rem}
.legal-links a{color:inherit}
@media print{.legal-links{display:none}}

/* Vorschau: dritte Spalte Finanzielle Wirkung */
.workspace{grid-template-columns:1.45fr 1fr .9fr}
.finance-card{background:#fff;border:1px solid #e5e5ea;border-radius:22px;padding:22px;border-top:5px solid #2f6b2f}
.finance-card h2{font-size:20px;margin:6px 0 14px}
.fin-row{padding:12px 0;border-bottom:1px solid #eee;display:grid;gap:2px}
.fin-row span{font-size:12px;color:var(--muted)}
.fin-row strong{font-size:20px;letter-spacing:-.5px}
.fin-row small{font-size:11px;color:var(--muted)}
.fin-main strong{font-size:28px;color:#2f6b2f}
.fin-inv{display:grid;gap:6px;font-size:12px;margin:14px 0 4px}
.fin-total{margin-top:16px;padding:14px;border-radius:12px;background:#f5f5f7;display:grid;gap:3px}
.fin-total span,.fin-total small{font-size:11px;color:var(--muted)}
.fin-total strong{font-size:18px}
.fin-note,.fin-empty{font-size:11px;color:var(--muted);line-height:1.45;margin:12px 0 0}
.fin-empty{font-size:13px;color:var(--ink)}
@media(max-width:1250px){.workspace{grid-template-columns:1.6fr 1fr}.finance-card{grid-column:1/-1}.finance-card #finBody{display:grid;grid-template-columns:repeat(3,1fr) 1.2fr;gap:0 18px;align-items:start}.finance-card .fin-inv,.finance-card .fin-note,.finance-card .fin-empty{grid-column:1/-1}}
@media(max-width:1000px){.finance-card #finBody{grid-template-columns:1fr}}
.fin-explain{margin-top:12px;font-size:12px;line-height:1.5}
.fin-explain summary{cursor:pointer;font-weight:600;font-size:12px;padding:6px 0}
.fin-explain p{margin:8px 0;color:var(--ink)}
.fin-ratio strong{font-size:24px}
.tc-wrap{display:block!important;grid-column:1/-1}
.tc-lead{font-size:12px;margin:0 0 10px}
.tc-table{width:100%;border-collapse:collapse;font-size:13px}
.tc-table th,.tc-table td{padding:7px 10px;text-align:right;border-bottom:1px solid #e5e5ea;white-space:nowrap}
.tc-table td:first-child,.tc-table th:first-child{text-align:left}
.tc-table thead th{font-size:11px;color:var(--muted);font-weight:600}
.tc-table .tc-head th{text-align:left;font-size:12px;padding-top:16px;background:none}
.tc-table .tc-sum td{font-weight:700;border-bottom:2px solid #c7c7cc}
.tc-result{font-size:14px;margin:14px 0 6px}
.tc-explain{margin-top:8px;font-size:12px;line-height:1.55}
.tc-explain summary{cursor:pointer;font-weight:600;padding:6px 0}
.tc-explain p{margin:8px 0}
.linked-heat .tc-wrap strong{display:inline;font-size:inherit;margin:0}
.tc-result strong{font-size:16px}
.tc-explain p strong{font-weight:700}
.tc-wrap .table-scroll{max-height:none;overflow-x:auto;overflow-y:visible}
.beg-source{display:block;margin-top:4px;font-size:11px;color:var(--muted)}

/* Mobile Korrektur 2026-11-13: spätere Breitenregeln (max-width:1250px) überschrieben die Einspaltigkeit */
@media(max-width:760px){.workspace{grid-template-columns:1fr}.finance-card #finBody{display:block}}
