/* Desktop tariff editor and a single financial result. */
:root{--fin-accent:#b87900;--fin-ink:var(--text,#152b43);--fin-muted:var(--muted,#63758a);--fin-panel:var(--surface,#fff);--fin-border:var(--line,#dce4ec)}
.ges-field-hidden,[hidden].ges-field-hidden{display:none!important}
#uploadPanel .secbanner-tarife{display:none!important}
#dashboard>.ges-secbanner,#financialSummaryPage>.ges-secbanner,#dashboard>.ges-secbanner-restore,#financialSummaryPage>.ges-secbanner-restore{display:none!important}
#uploadPanel{height:auto!important;max-height:none!important}
#uploadPanel>#wizStep1,#uploadPanel>#wizStep2,#uploadPanel>.wiz-topbar,#uploadPanel>.wiz-nav-row{display:none!important}
#uploadPanel>#wizStep3{display:block!important;opacity:1!important;pointer-events:auto!important;overflow:visible!important}
#uploadPanel #priceSection{max-width:1400px;margin:0 auto;padding:24px 28px 32px!important}
#gesTariffIntro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 26px}
#gesTariffIntro span,.ges-finance-eyebrow{font-size:11px;font-weight:750;letter-spacing:.12em;color:var(--fin-accent)}
#gesTariffIntro h2{font-size:27px;letter-spacing:-.6px;margin:7px 0;color:var(--fin-ink);line-height:1.25}
#gesTariffIntro p{font-size:14px;color:var(--fin-muted);margin:0;line-height:1.6}
#gesTariffIntro button,#gesFinanceStatus button{border:1px solid var(--fin-border);background:var(--fin-panel);color:var(--fin-ink);border-radius:9px;padding:10px 14px;font-weight:650;cursor:pointer;white-space:nowrap}
#uploadPanel .tarwiz-bar{justify-content:flex-end;margin-bottom:12px}
#uploadPanel .tarwiz-seg{background:transparent;border:0;box-shadow:none}
#tarWizModeWiz{display:none!important}
#tarWizModeDonem{font-size:12px;border:1px solid var(--fin-border)!important;border-radius:8px!important;background:var(--fin-panel)!important;padding:8px 12px!important;color:var(--fin-muted)!important}
#uploadPanel #tarWizSteps{display:flex;gap:8px;margin:0 0 24px;padding:0 0 20px;border-bottom:1px solid var(--fin-border)}
#tarWizSteps .tarwiz-sep{display:none}
#tarWizSteps .tarwiz-pill{flex:1;min-height:48px;justify-content:flex-start;border-radius:10px;padding:10px 14px;font-size:13px;gap:10px;cursor:pointer;background:var(--fin-panel);border:1px solid var(--fin-border);color:var(--fin-muted)}
#tarWizSteps .tarwiz-pill.cur{background:rgba(184,121,0,.09);border-color:var(--fin-accent);color:var(--fin-ink);box-shadow:inset 0 -2px var(--fin-accent)}
#tarWizSteps .tarwiz-pill.done .n{background:#e0f1e9;color:#207557}
#tarWizSteps .n{width:24px;height:24px;border-radius:7px}
#uploadPanel #tarWizBody{padding:0;line-height:1.55}
#uploadPanel #tarWizBody .distribution-box,#uploadPanel #tarWizBody .price-box,#uploadPanel #aboneTarifeCard,#uploadPanel #tarifeGrupCard{background:var(--fin-panel);border:1px solid var(--fin-border);border-radius:14px;box-shadow:none;padding:20px;margin-bottom:14px}
#uploadPanel #tarWizBody .input{min-height:42px;border-radius:8px;background:var(--surface2,var(--fin-panel));border-color:var(--fin-border);font-size:14px}
#uploadPanel #tarWizBody .label{color:var(--fin-ink);font-size:13px;font-weight:650;margin-top:14px}
#uploadPanel #tarWizBody .unit-note{font-size:12px;color:var(--fin-muted);line-height:1.6}
#uploadPanel #tarWizBody h3,#uploadPanel #tarWizBody h4{font-size:16px;color:var(--fin-ink)}
#uploadPanel .tarwiz-nav{margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--fin-border);gap:12px}
#uploadPanel .tarwiz-nav button,#aboneSumGo{min-height:44px;border-radius:9px;box-shadow:none!important;animation:none!important;font-weight:700}
#tarWizNext,#aboneSumGo{background:#b87900!important;color:#fff!important;border:0!important;transform:none!important}
#uploadPanel .tarwiz-sum-grid{gap:14px}
#uploadPanel .tarwiz-sum-card{padding:17px 18px;background:var(--fin-panel);border:1px solid var(--fin-border);border-radius:10px}
#uploadPanel .tarwiz-sum-card span{font-size:12px;color:var(--fin-muted)}
#uploadPanel .tarwiz-sum-card strong{font-size:15px;line-height:1.5;margin-top:5px}
#uploadPanel.ges-tariff-automatic #fixedSaleWrap{display:none!important}
#gesRegimeSaveHint{font-size:12px;color:var(--fin-muted);margin:16px 0 8px}
#gesSkttAdvanced>summary{font-size:13px;font-weight:650;cursor:pointer;color:var(--fin-muted);padding:4px 0}
.ges-sktt-advanced-content{padding-top:18px}
#sktContractPriceRow{margin:12px 0}
#regimeSaveStatus{border-radius:8px!important;font-size:13px!important;padding:12px 14px!important}
#gesFinanceSaveStatus[data-kind="ok"]{border-left:4px solid #23976d!important}
#gesFinanceSaveStatus[data-kind="error"]{border-left:4px solid #c25045!important}
#gesV6FinanceMain{color:var(--fin-ink);padding:24px 28px 28px!important;max-width:1456px;margin:auto}
#gesV6FinanceMain .ges-v6-finance-head{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0 0 22px!important;min-height:0!important;display:flex;align-items:center;justify-content:space-between;gap:24px}
#gesV6FinanceMain .ges-v6-finance-head-copy>span{font-size:11px;letter-spacing:.12em;color:var(--fin-accent)}
#gesV6FinanceMain .ges-v6-finance-head-copy>strong{font-size:28px;line-height:1.25;letter-spacing:-.6px;color:var(--fin-ink);margin:7px 0}
#gesV6FinanceMain .ges-v6-finance-head-copy>small{font-size:12px;color:var(--fin-muted);max-width:660px;line-height:1.5}
#gesV6FinanceMain .ges-v6-finance-head-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}
#gesV6FinanceMain button,#gesV6FinanceDetail button{border-radius:8px;min-height:38px;cursor:pointer}
#gesV6FinanceMain .ges-v6-finance-head-actions .primary{background:#b87900;color:#fff;border-color:#b87900}
#gesV6FinanceMain button:disabled{opacity:.5;cursor:not-allowed}
.ges-finance-toolbar{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--fin-border);border-bottom:1px solid var(--fin-border);margin-bottom:18px;flex-wrap:wrap}
.ges-finance-period{display:flex;align-items:center;gap:8px}
.ges-finance-period label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fin-muted)}
.ges-finance-period input,.ges-finance-period select{min-height:38px;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-panel);color:var(--fin-ink);padding:6px 9px;font:inherit;font-size:13px}
.ges-finance-period input[type="number"]{width:96px}
.ges-finance-date-nav{display:flex;align-items:center;gap:4px}
#gesV6FinanceMain .ges-finance-period button{min-height:38px;padding:6px 10px;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-panel);color:var(--fin-ink);white-space:nowrap}
#gesV6FinanceMain .ges-finance-date-nav button{width:34px;padding:6px;display:grid;place-items:center}
.ges-finance-date-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#gesV6FinanceMain .ges-finance-period button:disabled{opacity:.4;cursor:default}
#gesV6FinanceMain .ges-finance-period button:focus-visible{outline:2px solid var(--fin-accent);outline-offset:2px}
#tesisProfilCard .tp-required,#tesisProfilCard .tp-field-warning{color:#b42332}
#tesisProfilCard .tp-required[hidden]{display:none!important}
#tesisProfilCard .tp-field-hint{display:block;margin:6px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}
#tesisProfilCard .tp-field-hint.tp-field-warning{color:#b42332}
#tesisProfilCard .tp-field-hint[hidden]{display:none!important}
#tesisProfilCard .input.tp-field-empty,#tesisProfilCard .input.tp-field-invalid{border-color:#cb4654!important;background:#fff4f4!important;box-shadow:0 0 0 1px rgba(180,35,50,.08)}
html[data-theme="dark"] #tesisProfilCard .tp-required,html[data-theme="dark"] #tesisProfilCard .tp-field-hint.tp-field-warning{color:#ff9da7}
html[data-theme="dark"] #tesisProfilCard .input.tp-field-empty,html[data-theme="dark"] #tesisProfilCard .input.tp-field-invalid{border-color:#e47986!important;background:#351e2b!important}
#gesV6FinanceMain .ges-v6-finance-result-meta{margin:0;gap:6px;flex:1}
#gesV6FinanceMain .ges-v6-finance-chip{font-size:11px;padding:5px 9px;color:var(--fin-muted);background:var(--fin-panel);border-color:var(--fin-border)}
.ges-finance-status{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--fin-border);border-left:3px solid #ba8626;border-radius:10px;padding:12px 16px;background:var(--fin-panel);margin-bottom:20px;font-size:12px}
.ges-finance-status[data-state="ok"]{border-left-color:#259c75}
.ges-finance-status strong{font-size:13px}.ges-finance-status p{margin:3px 0 0;color:var(--fin-muted);line-height:1.6}
#gesV6FinanceMain .ges-v6-finance-result-grid{display:grid;grid-template-columns:1.05fr 2fr;gap:18px;margin:0 0 24px}
#gesV6FinanceMain .ges-v6-finance-result-card{display:flex;flex-direction:column;align-items:flex-start;min-height:225px;padding:24px;border:0;border-radius:14px;background:#142d43!important;color:#fff!important;box-shadow:none}
#gesV6FinanceMain .ges-v6-finance-result-card>span{font-size:11px;letter-spacing:.12em;color:#bfd0df}
#gesV6FinanceMain #gesV6FinanceNet{font-size:36px;letter-spacing:-1px;line-height:1.2;color:#fff!important;margin:16px 0 6px;overflow-wrap:anywhere}
#gesV6FinanceMain .ges-v6-finance-result-card p{font-size:13px;line-height:1.5;margin:0 0 8px;color:#e4ebf1}
#gesV6FinanceMain .ges-v6-finance-result-card small{font-size:11px;color:#b8c9d8;line-height:1.5}
#gesV6FinanceMain .ges-v6-finance-result-card button{margin-top:20px;background:transparent;color:#ffe0a0;border:0;padding:0;min-height:24px;font-size:12px}
#gesV6FinanceMain .ges-v6-finance-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#gesV6FinanceMain .ges-v6-finance-kpi{background:var(--fin-panel)!important;border:1px solid var(--fin-border)!important;border-top:3px solid #7e97a8!important;box-shadow:none!important;border-radius:12px;padding:22px 16px;display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0}
#gesV6FinanceMain .ges-v6-finance-kpi.green{border-top-color:#278a68!important}
#gesV6FinanceMain .ges-v6-finance-kpi.red{border-top-color:#bd7869!important}
#gesV6FinanceMain .ges-v6-finance-kpi.gold{border-top-color:#be943f!important}
#gesV6FinanceMain .ges-v6-finance-kpi span{font-size:13px;font-weight:650;color:var(--fin-ink)}
#gesV6FinanceMain .ges-v6-finance-kpi strong{font-size:23px;letter-spacing:-.5px;overflow-wrap:anywhere;color:var(--fin-ink)}
#gesV6FinanceMain .ges-v6-finance-kpi small{font-size:12px;line-height:1.6;color:var(--fin-muted)}
.ges-finance-breakdown{background:var(--fin-panel);border:1px solid var(--fin-border);border-radius:12px;padding:20px 22px;margin-bottom:16px}
.ges-finance-breakdown header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.ges-finance-breakdown h3{font-size:17px;margin:5px 0 0;line-height:1.3}
.ges-finance-breakdown header>span{font-size:12px;color:var(--fin-muted);text-align:right}
.ges-finance-ledger,.ges-finance-energy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ges-finance-ledger>div{display:flex;flex-direction:column;gap:8px;padding:14px 0;border-top:1px solid var(--fin-border)}
.ges-finance-ledger span,.ges-finance-energy span{font-size:12px;color:var(--fin-muted)}
.ges-finance-ledger strong{font-size:21px;font-variant-numeric:tabular-nums}
.ges-finance-energy{grid-template-columns:repeat(6,minmax(0,1fr))}
.ges-finance-energy article{display:flex;flex-direction:column;gap:9px;padding:0 16px;border-left:1px solid var(--fin-border)}
.ges-finance-energy article:first-child{padding-left:0;border-left:0}
.ges-finance-energy strong{font-size:19px;font-variant-numeric:tabular-nums}.ges-finance-energy small{font-size:11px;line-height:1.5;color:var(--fin-muted)}
/* Abschnitt 02 mit Mahsuplaşma (28.09.2026): Überschrift, Wert und Hinweis je Kachel auf gemeinsamen Zeilen (subgrid); bis 1600px
   3 + 3 Kacheln — oben Üretim, Öz tüketim, Tüketim; unten Mahsuplaşma, Net satış, Net alış (Öz tüketim seit v1130). */
.ges-finance-energy{grid-template-rows:auto auto auto;row-gap:0}
.ges-finance-energy article{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start;gap:9px}
.ges-finance-energy strong{white-space:nowrap}
@media screen and (max-width:1600px){
  .ges-finance-energy{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}
  .ges-finance-energy article:nth-child(4){padding-left:0;border-left:0}
}
.ges-finance-help{padding:16px 4px;font-size:13px;line-height:1.7}.ges-finance-help summary{cursor:pointer;font-weight:650}.ges-finance-help p{max-width:950px;color:var(--fin-muted)}
#gesV6FinanceMain .ges-v6-finance-note{background:none;border:0;padding:8px 0;font-size:11px;color:var(--fin-muted)}
#gesCustomerReport{display:none}
.ges-battery-intro{font-size:13px;line-height:1.7;color:var(--fin-muted);max-width:1000px}
.ges-battery-inputs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0 14px}
.ges-battery-assumptions{margin:16px 0 6px;border:1px solid var(--fin-border);border-radius:10px;padding:0 14px}
.ges-battery-assumptions>summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:11px 0;font-size:13px;color:var(--fin-ink)}
.ges-battery-assumptions>summary::-webkit-details-marker{display:none}
.ges-battery-assumptions>summary:focus-visible{outline:2px solid var(--fin-accent);outline-offset:2px;border-radius:6px}
.ges-battery-assumptions-title{font-weight:700}
#gesBatteryAssumptionSummary{color:var(--fin-muted)}
.ges-battery-assumptions-edit{margin-left:auto;color:var(--fin-accent);font-weight:700}
.ges-battery-assumptions[open] .when-closed,.ges-battery-assumptions:not([open]) .when-open{display:none}
.ges-battery-assumptions-note{margin:0;font-size:12px;color:var(--fin-muted);line-height:1.55}
.ges-battery-assumptions .ges-battery-inputs{margin:14px 0}
.ges-battery-assumptions .ges-battery-actions{padding-bottom:14px}
.ges-battery-hint{display:block;margin-top:6px;font-size:11px;font-weight:400;color:var(--fin-muted);line-height:1.45}
/* Kapazitätsregler (26.09.2026): wählt unter den vom Server geprüften Größen; Empfehlung markiert. */
.ges-battery-slider{margin:6px 0 18px;padding:16px 18px;border:1px solid var(--fin-border);border-left:4px solid var(--fin-accent);border-radius:10px;background:var(--fin-panel)}
.ges-battery-slider-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.ges-battery-slider-head label{font-size:13px;font-weight:700;color:var(--fin-ink)}
.ges-battery-slider-head strong{font-size:22px;font-variant-numeric:tabular-nums;color:var(--fin-ink)}
.ges-battery-slider input[type=range]{width:100%;margin:12px 0 4px;accent-color:var(--fin-accent)}
.ges-battery-ticks{position:relative;height:16px;margin:0 2px;font-size:11px;color:var(--fin-muted);font-variant-numeric:tabular-nums}
.ges-battery-ticks span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
#gesBatteryReport.is-pending .ges-report-preview{opacity:.45;pointer-events:none;transition:opacity .15s}
.ges-battery-pending{margin:0 0 10px;padding:6px 10px;border-left:3px solid var(--fin-accent);font-size:13px;font-weight:700;color:var(--fin-ink)}
.ges-battery-pending button{margin-left:8px;font-size:12px}
/* Ladeanimation Batterie (28.09.2026, Nutzerwunsch): Zellen füllen sich nacheinander wie beim Laden, solange gerechnet wird. */
.ges-battery-loader{display:flex;align-items:center;gap:16px;margin:4px 0 10px;padding:12px 16px;border:1px solid var(--fin-border);border-left:4px solid var(--fin-accent);border-radius:10px;background:color-mix(in srgb,var(--fin-accent) 6%,var(--fin-panel))}
.ges-battery-loader[hidden]{display:none}
.ges-battery-loader-icon{flex:none;width:76px;height:38px}
.ges-battery-shell{fill:none;stroke:var(--fin-ink);stroke-width:2.4;opacity:.7}
.ges-battery-tip{fill:var(--fin-ink);opacity:.7}
.ges-battery-cell{fill:var(--fin-accent);opacity:.15}
.ges-battery-cell.c1{animation:gesBatC1 2.4s ease-in-out infinite}
.ges-battery-cell.c2{animation:gesBatC2 2.4s ease-in-out infinite}
.ges-battery-cell.c3{animation:gesBatC3 2.4s ease-in-out infinite}
.ges-battery-cell.c4{animation:gesBatC4 2.4s ease-in-out infinite}
.ges-battery-cell.c5{animation:gesBatC5 2.4s ease-in-out infinite}
@keyframes gesBatC1{0%,6%{opacity:.15}12%,88%{opacity:1}96%,100%{opacity:.15}}
@keyframes gesBatC2{0%,22%{opacity:.15}28%,88%{opacity:1}96%,100%{opacity:.15}}
@keyframes gesBatC3{0%,38%{opacity:.15}44%,88%{opacity:1}96%,100%{opacity:.15}}
@keyframes gesBatC4{0%,54%{opacity:.15}60%,88%{opacity:1}96%,100%{opacity:.15}}
@keyframes gesBatC5{0%,70%{opacity:.15}76%,88%{opacity:1}96%,100%{opacity:.15}}
.ges-battery-loader-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.ges-battery-loader-text strong{font-size:14px;color:var(--fin-ink)}
.ges-battery-loader-text>span{font-size:12px;color:var(--fin-muted)}
.ges-battery-loader-time{margin-left:6px;font-variant-numeric:tabular-nums}
.ges-battery-loader-time:not(:empty)::before{content:"· "}
.ges-battery-mini{width:22px;height:11px;margin-right:7px;vertical-align:-1px}
.ges-battery-mini .ges-battery-shell{stroke-width:3.2}
@media (prefers-reduced-motion:reduce){
  .ges-battery-cell{animation:none!important}
  .ges-battery-cell.c1,.ges-battery-cell.c2,.ges-battery-cell.c3{opacity:1}
}
@media print{.ges-battery-loader{display:none!important}}
/* Fazla enerji bilançosu (28.09.2026): Überschuss | Bedarf nebeneinander, Anteilsbalken. */
.ges-battery-surplus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px}
.ges-battery-surplus .ges-report-row.is-head b{font-size:14px}
.ges-battery-share{height:10px;margin:4px 0 6px;border-radius:999px;background:color-mix(in srgb,var(--fin-muted) 22%,transparent);overflow:hidden}
.ges-battery-share i{display:block;height:100%;border-radius:inherit}
.ges-battery-share.is-charge i{background:var(--fin-accent)}
.ges-battery-share.is-cover i{background:#1f8a5b}
.ges-battery-surplus-note{font-size:12px;color:var(--fin-muted)}
@media print{#gesCustomerReport .ges-battery-surplus-grid{gap:2px 18px}#gesCustomerReport .ges-battery-share{height:7px;margin:2px 0 3px;background:#e6ebf0!important;print-color-adjust:exact}#gesCustomerReport .ges-battery-share.is-charge i{background:#c39845!important;print-color-adjust:exact}#gesCustomerReport .ges-battery-share.is-cover i{background:#1f8a5b!important;print-color-adjust:exact}#gesCustomerReport .ges-battery-surplus-note{color:#546577}}
.ges-battery-ticks .is-rec{color:var(--fin-accent);font-weight:800}
.ges-battery-slider p{margin:10px 0 0;font-size:12px;color:var(--fin-muted);line-height:1.55}
.ges-battery-steps{margin:0;padding-left:20px;font-size:13px;line-height:1.7;color:var(--fin-ink)}
.ges-battery-steps li{margin:4px 0}
.ges-battery-table tr[aria-current="true"] td{font-weight:750}
.ges-battery-table tr.is-idle td{color:var(--fin-muted,#6b7a8a);font-style:italic}
.ges-battery-basis{margin:0 0 10px;font-size:12px;color:var(--fin-muted,#6b7a8a)}
.ges-battery-inputs label{font-size:12px;font-weight:650;color:var(--fin-ink)}
.ges-battery-inputs small{display:block;color:var(--fin-muted);font-weight:400;margin:5px 0}
.ges-battery-inputs input{width:100%;box-sizing:border-box;min-height:40px;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-panel);color:var(--fin-ink);padding:8px 10px;font:inherit}
.ges-battery-actions{display:flex;justify-content:space-between;align-items:center;gap:20px}.ges-battery-actions span,#gesBatteryStatus{font-size:12px;color:var(--fin-muted);line-height:1.6}
#gesBatteryPlan button{padding:10px 16px;background:#b87900;color:white;border:0;font-weight:650}
#gesBatteryPlan button:disabled{opacity:.5;cursor:not-allowed}
#gesBatteryPlan header{cursor:pointer}
#gesBatteryPlan .ges-battery-toggle{all:unset;display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:inherit;font:inherit;border-radius:6px}
#gesBatteryPlan .ges-battery-toggle:focus-visible{outline:2px solid var(--fin-accent);outline-offset:3px}
#gesBatteryPlan .ges-battery-chevron{flex:none;color:var(--fin-muted);transition:transform .15s}
#gesBatteryPlan.is-collapsed .ges-battery-chevron{transform:rotate(-90deg)}
#gesBatteryPlan.is-collapsed header{margin-bottom:0}
.ges-battery-toggle-meta{display:block;margin-top:4px;font-size:12px;color:var(--fin-muted)}
.ges-battery-toggle-meta:empty{display:none}
#gesBatteryResult .ges-report-preview{max-width:none;padding:12px 0}
.ges-battery-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}
.ges-battery-table th,.ges-battery-table td{padding:10px 12px;text-align:right;border-bottom:1px solid var(--fin-border)}
.ges-battery-table th{position:static;background:var(--surface2,#eef3f7);color:var(--fin-ink)}
.ges-battery-table td{color:var(--fin-ink)}
.ges-battery-table th,.ges-battery-table td{white-space:normal;overflow-wrap:anywhere}
.ges-finance-month-table{width:100%;min-width:0;table-layout:fixed;font-size:12px}
.ges-finance-month-table th,.ges-finance-month-table td{padding:10px;white-space:normal;overflow-wrap:anywhere;color:var(--fin-ink);border-bottom:1px solid var(--fin-border)}
.ges-finance-month-table th{position:static;background:var(--surface2,#eef3f7)}
.ges-finance-month-table td:last-child{text-align:left;font-size:11px;color:var(--fin-muted)}
.ges-battery-table th:first-child,.ges-battery-table td:first-child{text-align:left}
.ges-battery-recommended{background:rgba(35,151,109,.09)}
.ges-battery-scroll{max-height:360px;overflow:auto;margin-top:16px}
.ges-battery-scroll th{position:sticky;top:0;background:var(--fin-panel)}
.ges-battery-balance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ges-battery-balance>div{min-width:0}
.ges-battery-balance strong{display:block;font-size:28px;line-height:1.3;margin:10px 0}
.ges-battery-balance span{font-size:11px;letter-spacing:.04em}
.ges-battery-balance p{margin:0 0 10px;line-height:1.6}
.ges-battery-equation{padding:12px 16px;border:1px solid var(--fin-border);border-radius:8px;font-variant-numeric:tabular-nums}
.ges-osos-quick,.ges-osos-plant-actions button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--fin-border);border-radius:8px;padding:10px 12px;background:var(--fin-panel);color:var(--fin-ink);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer}
.ges-osos-plant-actions{padding:14px 20px;border-bottom:1px solid var(--fin-border)}
.ges-osos-plant-actions>div{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.ges-osos-plant-actions p{font-size:12px;line-height:1.6;color:var(--fin-muted);margin:10px 0 0}
.ges-osos-plant-actions a{font-size:12px;color:var(--fin-accent)}
.ges-osos-plant-actions button:disabled{opacity:.55;cursor:not-allowed}
.ges-report-preview{max-width:960px;margin:auto;padding:30px;background:var(--fin-panel);color:var(--fin-ink);font-size:14px;line-height:1.6}
.ges-report-preview .ges-report-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid var(--fin-accent);padding-bottom:16px;margin-bottom:20px}
.ges-battery-legal{margin:12px 0 0;padding:9px 12px;border-left:3px solid #b3261e;background:rgba(179,38,30,.06);font-size:12px;line-height:1.55;color:var(--fin-ink)}
:root[data-theme="dark"] .ges-battery-legal{background:rgba(224,96,79,.1);border-left-color:#e0604f}
/* Firmenlogo im Berichtskopf (28.09.2026): Logo links neben Berichtsart/Titel; auf dunkler Fläche mit weißem Grund. */
.ges-report-brand{display:flex;align-items:center;gap:18px;min-width:0}
.ges-report-logo{display:block;flex:none;width:180px;max-width:38%;height:auto;background:#fff;border-radius:8px;padding:8px 10px;box-sizing:border-box}
.ges-report-preview h1{font-size:28px;margin:8px 0}.ges-report-preview h2{font-size:19px;margin:24px 0 12px}
.ges-report-preview .ges-report-head small,.ges-report-preview .ges-report-row small{display:block;font-size:12px;color:var(--fin-muted)}
.ges-report-preview .ges-report-outcome{padding:20px;background:var(--surface2,#eef3f7);border-left:4px solid #355e78}
.ges-report-preview .ges-report-outcome>strong{display:block;font-size:36px}
.ges-report-preview .ges-report-row{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--fin-border);padding:12px 0}
.ges-report-preview .ges-report-row>strong{font-size:19px;white-space:nowrap}
.ges-report-preview .ges-report-energy{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ges-report-preview .ges-report-energy>div{padding:12px;border:1px solid var(--fin-border);border-radius:8px}
.ges-report-preview .ges-report-energy span{display:block;font-size:12px;color:var(--fin-muted)}
.ges-report-preview .ges-report-energy small{display:block;font-size:11px;color:var(--fin-muted);margin-top:2px}
.ges-report-preview footer{border-top:1px solid var(--fin-border);padding-top:16px;margin-top:24px;font-size:12px;color:var(--fin-muted)}
@media print{
  @page{size:A4;margin:11mm 13mm}
  html:has(body.ges-customer-print){min-width:0!important;width:auto!important;overflow:visible!important}
  body.ges-customer-print{background:#fff!important;color:#183046!important;padding:0!important;margin:0!important;min-width:0!important;width:auto!important;display:block!important;overflow:visible!important}
  body.ges-customer-print>*:not(#gesCustomerReport){display:none!important}
  body.ges-customer-print #gesCustomerReport{display:block!important;position:static!important;min-width:0!important;max-width:100%!important;width:auto!important;font:10pt/1.5 Arial,sans-serif;color:#183046;background:#fff;box-sizing:border-box}
  body.ges-customer-print #gesCustomerReport *{visibility:visible!important;box-shadow:none!important;text-shadow:none!important}
  #gesCustomerReport .ges-report-head{display:flex;justify-content:space-between;gap:16px;border-bottom:2px solid #c39845;padding-bottom:9px;margin-bottom:12px}
  #gesCustomerReport .ges-report-head span{font-size:8pt;letter-spacing:1px;color:#876126}
  #gesCustomerReport .ges-report-brand{gap:5mm}
  #gesCustomerReport .ges-report-logo{width:44mm;max-width:none;padding:0;border-radius:0;background:none!important}
  #gesCustomerReport h1{font-size:21pt;letter-spacing:-.5px;margin:5px 0 2px;line-height:1.2}
  #gesCustomerReport .ges-report-head p{margin:0;font-size:12pt}
  #gesCustomerReport .ges-report-head>div:last-child{text-align:right;font-size:11pt;padding-top:5px;white-space:nowrap}
  #gesCustomerReport small{display:block;font-size:8pt;color:#546577;line-height:1.35;font-weight:400}
  #gesCustomerReport .ges-report-outcome{background:#eef3f7!important;border-left:4px solid #23465e;padding:8px 16px;margin:0 0 8px;print-color-adjust:exact}
  #gesCustomerReport .ges-report-outcome>span{font-size:8pt;letter-spacing:1px}
  #gesCustomerReport .ges-report-outcome>strong{display:block;font-size:22pt;line-height:1.15;margin:3px 0}
  #gesCustomerReport p{font-size:9pt;line-height:1.42;margin:4px 0}
  #gesCustomerReport h2{font-size:12.5pt;margin:9px 0 5px;break-after:avoid}
  #gesCustomerReport h3{font-size:11pt;margin:20px 0 8px}
  #gesCustomerReport section,#gesCustomerReport footer{break-inside:avoid}
  #gesCustomerReport .ges-report-row{display:flex;justify-content:space-between;gap:20px;padding:4px 0;border-bottom:1px solid #dce3ea;break-inside:avoid}
  #gesCustomerReport .ges-report-row>strong{font-size:12pt;white-space:nowrap}
  #gesCustomerReport .ges-report-equation{color:#546577;font-size:8pt}
  #gesCustomerReport .ges-report-energy{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
  #gesCustomerReport .ges-report-energy>div{border:1px solid #dce3ea;padding:6px 9px;border-radius:5px}
  #gesCustomerReport .ges-report-energy span{display:block;font-size:8pt;color:#546577}
  #gesCustomerReport .ges-report-energy b{font-size:11pt;display:block;margin-top:4px}
  #gesCustomerReport footer{margin-top:8px;border-top:1px solid #dce3ea;padding-top:5px;font-size:8pt}
  #gesCustomerReport footer p{font-size:8pt}
  #gesCustomerReport>footer>p{display:inline;margin:0}#gesCustomerReport>footer>b::after{content:' · '}
  #gesCustomerReport .ges-report-page{break-before:page;break-inside:auto}
  #gesCustomerReport table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:8pt;font-variant-numeric:tabular-nums}
  #gesCustomerReport .ges-battery-balance strong{font-size:17pt}
  #gesCustomerReport thead{display:table-header-group}
  #gesCustomerReport th,#gesCustomerReport td{text-align:right;padding:6px;border-bottom:1px solid #dce3ea}
  #gesCustomerReport th:first-child,#gesCustomerReport td:first-child{text-align:left}
  #gesCustomerReport tr{break-inside:avoid}
}
/* Saved-rule status replaces the old duplicated chip; period already has its own picker. */
#gesV6FinanceSettlement[hidden],#gesV6FinancePeriod{display:none!important}

/* Financial pages share the same hierarchy and readable desktop card layout. */
#gesV6FinanceDetail{max-width:1400px;margin:0 auto;padding:24px 28px 32px}
#gesV6FinanceDetail .ges-v6-detail-head{padding:0 0 24px;border:0;border-bottom:1px solid var(--fin-border);border-radius:0;background:transparent}
.ges-finance-detail-tax{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0;padding:16px 20px;border:1px solid var(--fin-border);border-left:3px solid var(--fin-accent);border-radius:10px;background:var(--fin-panel)}
.ges-finance-detail-tax strong{font-size:15px;color:var(--fin-ink)}
.ges-finance-detail-tax p,.ges-finance-price-note{font-size:12px;color:var(--fin-muted);line-height:1.6;margin:5px 0}
.ges-finance-detail-tax .pv-tax-toggle{flex-shrink:0}
#gesV6FinanceDetail .ges-v6-detail-grid{gap:14px;margin:0 0 24px}
#gesV6FinanceDetail .ges-v6-detail-card{padding:20px;min-height:154px;border-color:var(--fin-border);background:var(--fin-panel)}
#gesV6FinanceDetail .ges-v6-detail-card>span:not(.ges-finance-card-icon){padding-right:30px;font-size:13px;font-weight:650;line-height:1.5;color:var(--fin-ink)}
#gesV6FinanceDetail .ges-v6-detail-card>strong{font-size:24px;letter-spacing:-.5px;margin:17px 0 10px}
#gesV6FinanceDetail .ges-v6-detail-card>small{font-size:12px;color:var(--fin-muted);line-height:1.55}
[data-finance-tone]{position:relative}
.ges-finance-card-icon{display:flex!important;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:var(--surface2);color:var(--fin-muted);position:absolute;top:15px;right:14px}
.ges-finance-card-icon svg,.ges-finance-page-nav svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
[data-finance-tone="income"] .ges-finance-card-icon{color:#239774;background:rgba(35,151,116,.1)}
[data-finance-tone="cost"] .ges-finance-card-icon{color:#c97567;background:rgba(201,117,103,.1)}
[data-finance-tone="saving"] .ges-finance-card-icon{color:var(--fin-accent);background:rgba(184,121,0,.1)}
#gesV6FinanceNetCard .ges-finance-card-icon{color:#d6e4ee;background:#ffffff16}
.ges-finance-page-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;margin-top:28px;border-top:1px solid var(--fin-border)}
.ges-finance-page-nav strong{display:block;color:var(--fin-ink);font-size:15px}
.ges-finance-page-nav span{display:block;font-size:12px;color:var(--fin-muted);margin-top:5px}
.ges-finance-page-nav button{display:flex;align-items:center;gap:14px;border:0;border-radius:9px;padding:14px 20px;background:var(--fin-accent);color:#fff;font-weight:750;cursor:pointer}
body[data-ges-v6-view="dashboard"] #dashboard>.summary-page-label{display:none!important}
.ges-hourly-pricing{padding:14px 16px;border:1px solid var(--fin-border);border-radius:9px;margin-bottom:12px;background:var(--fin-panel)}
.ges-hourly-pricing strong{font-size:14px;color:var(--fin-ink)}
.ges-hourly-pricing p{font-size:12px;line-height:1.6;margin:7px 0 0;color:var(--fin-muted)}
#pvHourlyTableCard .ges-hourly-compact table{width:100%;min-width:0;table-layout:fixed;font-size:12px;border-collapse:collapse}
#pvHourlyTableCard .ges-hourly-compact th,#pvHourlyTableCard .ges-hourly-compact td{padding:11px 8px;white-space:normal;overflow-wrap:anywhere;text-align:right;font-variant-numeric:tabular-nums}
#pvHourlyTableCard .ges-hourly-compact th:first-child,#pvHourlyTableCard .ges-hourly-compact td:first-child{text-align:left}
#pvHourlyTableCard .ges-hourly-compact th{position:sticky;top:0;background:var(--fin-panel);z-index:1;color:var(--fin-muted);font-size:11px;line-height:1.6}
#pvHourlyTableCard .ges-hourly-compact tfoot td{background:var(--fin-panel);font-weight:750}
#pvHourlyTableCard .ges-hour-positive{color:#21856a;font-weight:750}
#pvHourlyTableCard .ges-hour-negative{color:#b35b50;font-weight:750}
html[data-theme="dark"] #pvHourlyTableCard .ges-hour-positive{color:#62d8ac}
html[data-theme="dark"] #pvHourlyTableCard .ges-hour-negative{color:#f0a194}
.ges-hourly-technical{margin-top:16px}
.ges-hourly-technical summary{cursor:pointer;font-size:12px;font-weight:700;padding:12px 0;color:var(--fin-muted)}
/* 26.09.2026: aylık mahsuplaşma saatlik değerler + aylık ödeme notu */
.ges-monthly-hours-warn{color:#b45309;font-weight:650}
#pvHourlyTableCard .ges-monthly-hours table{min-width:0}
.ges-report-shift{font-size:12px;line-height:1.6;margin:10px 0 0;padding:10px 12px;border-left:3px solid #d4a017;background:rgba(212,160,23,.08)}
/* 01 · Gelir ve gider (28.09.2026; neu gesetzt 09.10.2026 nach Screenshot „kachel und texte unsauber"): Satış geliri + Rahmen
   „Elektrik gideri" (Posten nebeneinander, Summe als eigene Zeile mit Pfeil) = Dönem sonucu; darunter die Querkachel
   „GES’in toplam faydası" (① − ③). Umbrüche richten sich nach der KARTENBREITE (Container-Queries), nicht nach dem Fenster —
   vorher griff bei 1920-px-Fenstern das 4-Spalten-Layout in einer 1400-px-Karte. Beträge brechen nie um (Vorzeichen bleibt am
   Betrag); Schriftgröße folgt der Kartenbreite (cqi). Beschriftungen einzeilig, gleiche Höhe → Werte und „+" auf einer Linie.
   Leere KDV-/Kalem-/Mahsup-Posten bleiben über [hidden] ausgeblendet. */
#gesV6FinanceMain .ges-v6-finance-result-grid{display:none!important}
#gesFinanceBillFlow .ges-bill-flow-foot{display:none}
.ges-finance-ledger-card{container-type:inline-size;container-name:ledger}
#gesV6FinanceMain .ges-finance-ledger-card{border:1px solid color-mix(in srgb,var(--fin-accent) 42%,var(--fin-border));border-left:5px solid var(--fin-accent);background:linear-gradient(180deg,color-mix(in srgb,var(--fin-accent) 7%,var(--fin-panel)),var(--fin-panel) 70%);box-shadow:0 12px 30px rgba(21,43,67,.09);padding:24px 26px 20px}
#gesV6FinanceMain .ges-finance-ledger-card h3{font-size:21px}
#gesV6FinanceMain .ges-finance-ledger-card .ges-finance-eyebrow{font-size:12px}
.ges-finance-ledger.ges-ledger{display:grid;grid-template-columns:minmax(170px,1fr) auto minmax(0,3.6fr) auto minmax(190px,1.15fr);gap:0 14px;align-items:stretch}
.ges-ledger>div{display:flex;flex-direction:column;gap:6px;min-width:0;padding:18px 18px 16px;border-top:0;border-radius:12px}
.ges-ledger strong{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.3px;line-height:1.2}
.ges-ledger small{font-size:11px;line-height:1.4;color:var(--fin-muted)}
.ges-ledger-cap{font-size:13px!important;font-weight:700;color:var(--fin-ink)!important}
.ges-ledger>.ges-ledger-op{align-self:center;font-size:20px;font-weight:700;color:var(--fin-muted);line-height:1}
.ges-ledger>.ges-ledger-income{justify-content:center;background:color-mix(in srgb,#1f8a5b 7%,var(--fin-panel));border:1px solid color-mix(in srgb,#1f8a5b 26%,var(--fin-border))}
.ges-ledger>.ges-ledger-income strong{font-size:clamp(19px,1.75cqi,27px);color:#1f8a5b}
html[data-theme="dark"] .ges-ledger>.ges-ledger-income strong{color:#62d8ac}
.ges-ledger>.ges-ledger-result{justify-content:center;background:color-mix(in srgb,var(--fin-accent) 9%,var(--fin-panel));border:1px solid color-mix(in srgb,var(--fin-accent) 30%,var(--fin-border))}
.ges-ledger>.ges-ledger-result strong{font-size:clamp(19px,1.75cqi,27px);color:var(--fin-ink)}
.ges-ledger>.ges-ledger-group{gap:14px;border:1px solid color-mix(in srgb,#b3261e 32%,var(--fin-border));background:color-mix(in srgb,#b3261e 3%,var(--fin-panel))}
.ges-ledger-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.ges-ledger-head b{font-size:11px;letter-spacing:.7px;color:#b3261e}
html[data-theme="dark"] .ges-ledger-head b{color:#ff9a8c}
.ges-ledger-items{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(min-content,1fr);grid-template-rows:repeat(3,auto);gap:5px 26px}
.ges-ledger-items>[hidden]{display:none!important}
/* Review 09.10.2026: Beschriftungen dürfen umbrechen (z. B. „Önceki ay mahsubu · Temmuz 2026"); per Subgrid bleiben alle Werte
   auf einer gemeinsamen Linie, und eine Spalte wird nie schmaler als ihr Betrag. */
.ges-ledger-items>div{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start;row-gap:5px;min-width:0}
.ges-ledger-items span{font-size:12px;color:var(--fin-muted);line-height:1.3;align-self:end}
.ges-ledger-items strong{position:relative;font-size:clamp(16px,1.42cqi,21px);color:var(--fin-ink)}
.ges-ledger-items>div:not(:first-child) strong::before{content:'+';position:absolute;left:-19px;top:50%;transform:translateY(-52%);font-size:15px;font-weight:700;color:var(--fin-muted);letter-spacing:0}
.ges-ledger-items small{line-height:1.3}
.ges-ledger-total{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:auto;padding-top:12px;border-top:1px dashed color-mix(in srgb,#b3261e 30%,var(--fin-border))}
.ges-ledger-total span{font-size:13px;font-weight:700;color:var(--fin-ink)}
.ges-ledger-total svg{flex:0 0 auto;width:40px;height:12px;fill:none;stroke:var(--fin-accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ges-ledger-total strong{font-size:clamp(18px,1.6cqi,24px);color:#b3261e}
html[data-theme="dark"] .ges-ledger-total strong{color:#ff9a8c}
/* Querkachel „GES’in toplam faydası" unter der Gleichung: Symbol · Titel + Betrag · Herleitung + Hinweis. */
.ges-ledger-benefit{display:grid;grid-template-columns:auto minmax(0,auto) minmax(0,1fr);align-items:center;gap:6px 20px;margin-top:14px;padding:14px 20px;border-radius:12px;background:color-mix(in srgb,var(--fin-accent) 11%,var(--fin-panel));border:1px solid color-mix(in srgb,var(--fin-accent) 42%,var(--fin-border))}
.ges-ledger-benefit-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--fin-accent) 18%,transparent)}
.ges-ledger-benefit-icon svg{width:19px;height:19px;fill:none;stroke:var(--fin-accent);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ges-ledger-benefit-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.ges-ledger-benefit-main span{font-size:13px;font-weight:750;color:var(--fin-ink);white-space:nowrap}
.ges-ledger-benefit-main strong{font-size:clamp(20px,1.9cqi,28px);letter-spacing:-.4px;color:var(--fin-accent);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.15}
.ges-ledger-benefit-text{display:flex;flex-direction:column;gap:3px;min-width:0;padding-left:20px;border-left:1px dashed color-mix(in srgb,var(--fin-accent) 40%,var(--fin-border))}
.ges-ledger-benefit-text p{margin:0;font-size:13px;line-height:1.45;color:var(--fin-ink)}
.ges-ledger-benefit-text small{font-size:11.5px;line-height:1.4;color:var(--fin-muted)}
.ges-ledger-taxnote{display:block;margin-top:12px;font-size:11.5px;line-height:1.5;color:var(--fin-muted)}
/* Schmalere Karten: Gleichung untereinander (Satış, Gider, Ergebnis), Rechenzeichen zwischen den Blöcken mittig. */
@container ledger (max-width: 1080px){
  .ges-finance-ledger.ges-ledger{grid-template-columns:minmax(0,1fr);gap:8px}
  .ges-ledger-op{justify-self:center}
  .ges-ledger>.ges-ledger-income,.ges-ledger>.ges-ledger-result{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
  .ges-ledger>.ges-ledger-income small,.ges-ledger>.ges-ledger-result small{flex-basis:100%}
  .ges-ledger>.ges-ledger-income strong,.ges-ledger>.ges-ledger-result strong{font-size:clamp(19px,2.6cqi,26px)}
  .ges-ledger-items strong{font-size:clamp(16px,2.1cqi,20px)}
  .ges-ledger-total strong{font-size:clamp(18px,2.4cqi,23px)}
}
/* Sehr schmal: Posten zweispaltig, ohne „+" (keine eindeutige Reihenfolge mehr); Fayda-Kachel gestapelt. */
@container ledger (max-width: 640px){
  .ges-ledger-items{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
  .ges-ledger-items>div:not(:first-child) strong::before{display:none}
  .ges-ledger-benefit{grid-template-columns:auto minmax(0,1fr)}
  .ges-ledger-benefit-text{grid-column:1/-1;padding-left:0;border-left:0;border-top:1px dashed color-mix(in srgb,var(--fin-accent) 40%,var(--fin-border));padding-top:8px}
}
/* Review 09.10.2026: gemessener Umbruch (ledgerFit in ges-v6-beta1.js) — passt die Postenreihe nicht in die mittlere Spalte,
   gilt das Stapel-Layout der schmalen Karte (is-tight); reicht auch das nicht, Posten zweispaltig (is-narrow). */
.ges-finance-ledger.ges-ledger.is-tight{grid-template-columns:minmax(0,1fr);gap:8px}
.ges-ledger.is-tight>.ges-ledger-op{justify-self:center}
.ges-ledger.is-tight>.ges-ledger-income,.ges-ledger.is-tight>.ges-ledger-result{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
.ges-ledger.is-tight>.ges-ledger-income small,.ges-ledger.is-tight>.ges-ledger-result small{flex-basis:100%}
.ges-ledger.is-tight>.ges-ledger-income strong,.ges-ledger.is-tight>.ges-ledger-result strong{font-size:clamp(19px,2.6cqi,26px)}
.ges-ledger.is-tight .ges-ledger-items strong{font-size:clamp(16px,2.1cqi,20px)}
.ges-ledger.is-tight .ges-ledger-total strong{font-size:clamp(18px,2.4cqi,23px)}
.ges-ledger.is-narrow .ges-ledger-items{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.ges-ledger.is-narrow .ges-ledger-items>div:not(:first-child) strong::before{display:none}
/* Kachel „Elektrik hesabınız · adım adım" (28.09.2026, ersetzt die Rechnungskachel vom 26.09.): ① GES olmasaydı → ② beklenen fatura
   → ③ net ödemeniz, Differenzen auf den Pfeilen. Dieselben .ges-bill-flow-Klassen in Seite, Berichtsvorschau und Kunden-PDF. */
.ges-finance-bill{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0 0 16px;border:1px solid var(--fin-border);border-left:4px solid var(--fin-accent);border-radius:12px;background:var(--fin-panel);overflow:hidden}
.ges-finance-bill[hidden]{display:none!important}
.ges-finance-bill-main{display:flex;gap:14px;align-items:center;padding:16px 22px 0}
.ges-finance-bill-main>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.ges-finance-bill-main>div>span{font-size:11px;font-weight:750;letter-spacing:.6px;color:var(--fin-muted)}
.ges-finance-bill-main small{font-size:12px;line-height:1.5;color:var(--fin-muted)}
.ges-finance-bill-icon{flex:0 0 auto;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--fin-accent) 14%,transparent);color:var(--fin-accent)}
.ges-finance-bill-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ges-finance-bill-flow{padding:14px 22px 16px}
.ges-bill-flow{display:grid;grid-template-columns:minmax(0,1fr) minmax(205px,.9fr) minmax(0,1fr) minmax(215px,.9fr) minmax(0,1fr);gap:12px;align-items:stretch}
.ges-bill-flow-step{display:flex;flex-direction:column;gap:6px;min-width:0;padding:14px 16px;border:1px solid var(--fin-border);border-radius:10px;background:var(--fin-panel)}
.ges-bill-flow-title{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:750;letter-spacing:.6px;color:var(--fin-muted)}
.ges-bill-flow-title i{flex:0 0 auto;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800;letter-spacing:0;background:color-mix(in srgb,var(--fin-accent) 16%,transparent);color:var(--fin-accent)}
.ges-bill-flow-step strong{font-size:26px;letter-spacing:-.4px;font-variant-numeric:tabular-nums;color:var(--fin-ink)}
.ges-bill-flow-step small{font-size:12px;line-height:1.5;color:var(--fin-muted)}
.ges-bill-pair{font-size:11px;line-height:1.4;border-bottom:1px solid var(--fin-border);padding-bottom:6px}
.ges-bill-pair>div{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.ges-bill-pair b{white-space:nowrap;font-size:inherit}
.ges-bill-flow-step.is-result{background:#142d43;border-color:#142d43}
.ges-bill-flow-step.is-result .ges-bill-flow-title,.ges-bill-flow-step.is-result small{color:#bfd0df}
.ges-bill-flow-step.is-result strong{color:#fff}
.ges-bill-flow-step.is-result .ges-bill-flow-title i{background:#ffffff1f;color:#ffe0a0}
.ges-bill-flow-arrow{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;font-size:12px;line-height:1.45;color:var(--fin-muted)}
.ges-bill-flow-arrow>span{font-weight:700;color:var(--fin-ink)}
.ges-bill-flow-arrow svg{width:56px;height:12px;fill:none;stroke:var(--fin-accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ges-bill-flow-arrow p{margin:0}
.ges-bill-flow-arrow b{font-variant-numeric:tabular-nums;color:var(--fin-ink)}
/* Pfeil-Zeilen (28.09.2026): Beträge rechtsbündig in einer Spalte, Text daneben; Ergebniszeile mit Linie abgesetzt. */
.ges-bill-flow-lines{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:8px;row-gap:3px;align-items:baseline}
.ges-bill-flow-lines p{display:contents}.ges-bill-flow-lines b{text-align:right;white-space:nowrap}.ges-bill-flow-lines em{font-style:normal}
.ges-bill-flow-lines .is-total>b,.ges-bill-flow-lines .is-total>em{margin-top:3px;padding-top:5px;border-top:1px solid var(--fin-border)}
.ges-bill-flow-lines .is-total>b{color:var(--fin-accent)}.ges-bill-flow-lines .is-total>em{font-weight:650;color:var(--fin-ink)}
@media screen{.ges-bill-flow-lines .is-total>b{font-size:15px;line-height:1.3}}
.ges-bill-flow-arrow small{font-size:11px;line-height:1.4}
.ges-bill-flow-foot{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--fin-muted)}
.ges-bill-flow-foot b{font-size:15px;font-variant-numeric:tabular-nums;color:var(--fin-accent)}
#gesV6FinanceMain .ges-v6-finance-result-card .ges-finance-net-hint{margin-top:-2px;color:#ffe0a0}
#gesV6FinanceMain .ges-v6-finance-result-card .ges-finance-net-hint[hidden]{display:none}
@media screen and (max-width:1100px){
  .ges-bill-flow{grid-template-columns:minmax(0,1fr)}
  .ges-bill-flow-arrow{padding:0 16px}
  .ges-bill-flow-arrow svg{width:40px;height:12px;margin:14px 0 14px -8px;transform:rotate(90deg)}
}
.ges-report-preview .ges-report-flow{display:block;border:2px solid var(--fin-accent);border-radius:10px;padding:14px 16px;margin:0 0 16px}
.ges-report-flow-head{display:block;margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--fin-muted)}
@media print{
  #gesCustomerReport .ges-report-flow{display:block;border:2px solid #c39845;border-radius:6px;padding:5px 8px;margin:0 0 8px;break-inside:avoid;print-color-adjust:exact}
  #gesCustomerReport .ges-report-flow-head{font-size:7pt;letter-spacing:.8px;color:#876126;margin:0 0 4px}
  /* aylık-Hinweis (Versatz, kWh-Übertrag) im Druck kompakt, damit die Kundenzusammenfassung einseitig bleibt (28.09.2026). */
  #gesCustomerReport .ges-report-shift{font-size:8pt;line-height:1.4;margin:6px 0 0;padding:5px 9px;print-color-adjust:exact}
  #gesCustomerReport .ges-battery-legal{font-size:8pt;line-height:1.4;margin:6px 0 0;padding:5px 9px;print-color-adjust:exact}
  #gesCustomerReport .ges-bill-flow{grid-template-columns:1fr 112px 1fr 122px 1fr;gap:5px}
  #gesCustomerReport .ges-bill-flow-step{gap:2px;padding:4px 7px;border:1px solid #e4d3ad;border-radius:5px;background:#fff!important;print-color-adjust:exact}
  #gesCustomerReport .ges-bill-flow-title{gap:5px;font-size:6.5pt;line-height:1.25;letter-spacing:.2px;color:#876126}
  #gesCustomerReport .ges-bill-flow-title i{width:13px;height:13px;font-size:6.5pt}
  #gesCustomerReport .ges-bill-flow-step strong{font-size:13pt;line-height:1.1;color:#183046}
  /* A4 einseitig: Erläuterung je Schritt nur auf der Seite; im PDF erklären Pfeile, Fußzeile und Abschnitt 3 den Zusammenhang. */
  #gesCustomerReport .ges-bill-flow-step small{display:none}
  /* Chrome-Druck: ein blockartiges SVG (auch als Flex-Element) bricht das Raster auf die nächste Seite um (28.09.2026 gemessen)
     → Pfeilspalte als Block, SVG inline hinter dem Titel. */
  #gesCustomerReport .ges-bill-flow-arrow{display:block;font-size:7pt;line-height:1.3}
  #gesCustomerReport .ges-bill-flow-arrow>span{font-size:7pt;line-height:1.25}
  #gesCustomerReport .ges-bill-flow-arrow p{margin:0;font-size:7pt;line-height:1.3}
  #gesCustomerReport .ges-bill-flow-lines{font-size:7pt;line-height:1.3;column-gap:4px;row-gap:1px}
  #gesCustomerReport .ges-bill-flow-lines .is-total>b,#gesCustomerReport .ges-bill-flow-lines .is-total>em{margin-top:1px;padding-top:2px}
  #gesCustomerReport .ges-bill-flow-arrow small{display:block;font-size:6.5pt}
  #gesCustomerReport .ges-bill-flow-arrow svg{display:inline;width:36px;height:9px;margin-left:3px;vertical-align:middle}
  #gesCustomerReport .ges-bill-flow-step.is-result{background:#142d43!important;border-color:#142d43;print-color-adjust:exact}
  #gesCustomerReport .ges-bill-flow-step.is-result strong{color:#fff}
  #gesCustomerReport .ges-bill-flow-foot{margin:4px 0 0;font-size:7.5pt;line-height:1.35}
  #gesCustomerReport .ges-bill-flow-foot b{font-size:9pt}
}
.ges-finance-ledger>[hidden]{display:none!important}
html[data-theme="dark"] .ges-monthly-hours-warn{color:#fbbf24}
/* B9 (26.09.2026): Batterieleistung über der kWe der Anlage — nur Hinweis. */
.ges-battery-kwe{display:flex;gap:8px;align-items:flex-start;margin:10px 0 6px;padding:8px 12px;border:1px solid #f0c36d;border-left:4px solid #b45309;border-radius:8px;background:#fff8e8;color:#5c3b00;font-size:13px;line-height:1.5}
.ges-battery-kwe svg{flex:0 0 auto;margin-top:1px;color:#b45309}
.ges-battery-kwe.is-unknown{border-color:var(--fin-border);border-left-color:var(--fin-muted);background:transparent;color:var(--fin-muted)}
.ges-battery-kwe.is-unknown svg{color:var(--fin-muted)}
.ges-battery-table td.is-over-kwe{color:#b45309;font-weight:650}
html[data-theme="dark"] .ges-battery-kwe{background:rgba(245,158,11,.1);border-color:rgba(251,191,36,.45);border-left-color:#fbbf24;color:#fde7b0}
html[data-theme="dark"] .ges-battery-kwe svg,html[data-theme="dark"] .ges-battery-table td.is-over-kwe{color:#fbbf24}
html[data-theme="dark"] .ges-battery-kwe.is-unknown{background:transparent;border-color:var(--fin-border);border-left-color:var(--fin-muted);color:var(--fin-muted)}
@media print{#gesCustomerReport .ges-battery-kwe{background:#fff8e8!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#5c3b00}}
/* PTF'ye göre şarj (26.09.2026): Bestwert neben der realistischen Hauptzahl; netfeed-Erklärung. */
.ges-battery-best{margin:10px 0 4px;font-size:13px;color:var(--fin-ink);line-height:1.5}
.ges-battery-note{margin:8px 0 0;padding:6px 10px;border-left:3px solid var(--fin-border);font-size:13px;color:var(--fin-muted);line-height:1.5}
/* Zeitraum Gün/Ay/Yıl (26.09.2026): Datenbereich unter der Auswahl; Tagesfeld wie Monatsfeld. */
.ges-finance-period{flex-wrap:wrap}
.ges-finance-range-hint{flex-basis:100%;font-size:11px;color:var(--fin-muted);line-height:1.3}
.ges-finance-range-hint:empty{display:none}
/* Batterie: eigener Analysezeitraum Gün/Ay/Yıl (26.09.2026). */
.ges-battery-period{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 12px}
.ges-battery-period label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fin-muted)}
.ges-battery-period input,.ges-battery-period select{min-height:36px;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-panel);color:var(--fin-ink);padding:6px 9px;font:inherit;font-size:13px}
.ges-battery-period input[type="number"]{width:90px}
#gesBatteryPlan .ges-battery-period button{min-height:36px;padding:6px 10px;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-panel);color:var(--fin-ink);cursor:pointer;white-space:nowrap}
#gesBatteryPlan .ges-battery-period button[data-battery-period="prev"],#gesBatteryPlan .ges-battery-period button[data-battery-period="next"]{width:34px;padding:6px;display:grid;place-items:center}
#gesBatteryPlan .ges-battery-period button[hidden]{display:none}
#gesBatteryPlan .ges-battery-period button:disabled{opacity:.4;cursor:default}
#gesBatteryPlan .ges-battery-period button:not(:disabled):hover{border-color:var(--fin-accent)}
.ges-battery-period svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ges-battery-period small{flex-basis:100%;font-size:11px;color:var(--fin-muted)}
.ges-battery-period small:empty{display:none}
/* 26.09.2026: Stundenpreise nachvollziehbar (Finanz- und Batterietabelle, Jahresmittel PTF) */
#pvHourlyTableCard .ges-hourly-compact td small,.ges-battery-trace td small{display:block;font-size:10px;color:var(--fin-muted);font-weight:600}
.ges-battery-table.ges-battery-trace th,.ges-battery-table.ges-battery-trace td{padding:9px 8px}
.ges-battery-table.ges-battery-trace th:first-child{width:15%}
#pvHourlyTableCard .ges-hourly-compact th:first-child{width:11%}
.ges-battery-table.ges-battery-trace tfoot td{position:sticky;bottom:0;background:var(--fin-panel);font-weight:750}
.ges-battery-trace .ges-hour-positive{color:#21856a;font-weight:750}
.ges-battery-trace .ges-hour-negative{color:#b35b50;font-weight:750}
html[data-theme="dark"] .ges-battery-trace .ges-hour-positive{color:#62d8ac}
html[data-theme="dark"] .ges-battery-trace .ges-hour-negative{color:#f0a194}
.ges-ptf-year-toggle{display:inline-flex;align-items:center;gap:8px;margin-top:10px;margin-right:18px;font-size:12px;font-weight:650;color:var(--fin-ink);cursor:pointer}
.ges-ptf-year-toggle input{width:16px;height:16px;accent-color:var(--fin-accent)}
.ges-ptf-year-note{margin:0 0 12px;padding:12px 16px;border-left:3px solid var(--fin-accent);border-radius:0 9px 9px 0;background:rgba(35,151,109,.07);font-size:12px;line-height:1.6;color:var(--fin-muted)}
.ges-ptf-year-note strong{color:var(--fin-ink);font-size:13px}
.ges-ptf-year-note p{margin:6px 0 0}
.ges-hourly-check{font-size:12px;line-height:1.6;margin:10px 0 0;color:var(--fin-muted)}
.ges-hourly-check b{color:var(--fin-ink)}

/* Batterie · Yatırım ve geri dönüş (28.09.2026): Eingaben, Kennzahlen, Säulen Nettostand je Jahr (unter Null = noch nicht zurückverdient).
   Farben geprüft (dataviz-Validator): hell #b3261e/#1f8a5b auf Weiß, dunkel #e0604f/#1e9e8a auf #0b1d31; Vorzeichen zusätzlich über Lage + Text. */
.ges-battery-payback{margin-top:14px;padding:14px 16px;border:1px solid var(--fin-border);border-radius:12px;background:var(--fin-panel)}
.ges-battery-payback h2{margin:0 0 10px}
.ges-payback-inputs{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.ges-payback-inputs label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:650;color:var(--fin-ink)}
.ges-payback-inputs small{font-weight:500;color:var(--fin-muted)}
.ges-payback-inputs input{padding:8px 10px;border:1px solid var(--fin-border);border-radius:8px;font:inherit;font-size:14px;background:transparent;color:var(--fin-ink)}
.ges-payback-inputs label:first-child input{border-color:color-mix(in srgb,var(--fin-accent) 55%,var(--fin-border));font-weight:700}
.ges-payback-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 8px}
.ges-payback-kpis>div{display:flex;flex-direction:column;gap:3px;padding:8px 0;border-top:1px solid var(--fin-border)}
.ges-payback-kpis span{font-size:12px;color:var(--fin-muted)}.ges-payback-kpis b{font-size:19px;font-variant-numeric:tabular-nums;color:var(--fin-ink)}
.ges-payback-kpis small{font-size:11px;color:var(--fin-muted)}.ges-payback-kpis .is-main b{color:var(--fin-accent)}.ges-payback-kpis .is-estimated small{color:#b45309}
.ges-payback-note{font-size:12px;line-height:1.55;color:var(--fin-muted);margin:6px 0 0}
.ges-payback-note .ges-battery-mini{width:26px;height:13px;vertical-align:middle;margin-right:4px}
.ges-payback-svg{display:block;width:100%;height:auto;margin-top:4px}
.ges-payback-svg .gp-grid{stroke:var(--fin-border);stroke-width:1}
.ges-payback-svg .gp-axis{font-size:11px;fill:var(--fin-muted)}
.ges-payback-svg .gp-zero{stroke:var(--fin-ink);stroke-width:1.2}
.ges-payback-svg .gp-bar.is-neg rect:first-child{fill:#b3261e}.ges-payback-svg .gp-bar.is-pos rect:first-child{fill:#1f8a5b}
.ges-payback-svg .gp-hit{fill:transparent}.ges-payback-svg .gp-bar:hover rect:first-child{opacity:.78}
.ges-payback-svg .gp-be{stroke:var(--fin-accent);stroke-width:1.5;stroke-dasharray:4 3}
.ges-payback-svg .gp-be-label{font-size:12px;font-weight:700;fill:var(--fin-ink)}
.ges-payback-svg .gp-label{font-size:11px;font-weight:650;fill:var(--fin-ink)}
.ges-payback-table{margin-top:8px}.ges-payback-table summary{cursor:pointer;font-size:12px;color:var(--fin-muted)}
html[data-theme="dark"] .ges-payback-svg .gp-bar.is-neg rect:first-child{fill:#e0604f}
html[data-theme="dark"] .ges-payback-svg .gp-bar.is-pos rect:first-child{fill:#1e9e8a}
html[data-theme="dark"] .ges-payback-kpis .is-estimated small{color:#fbbf24}
@media screen and (max-width:1100px){.ges-payback-inputs,.ges-payback-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{
  #gesCustomerReport .ges-battery-payback{padding:6px 8px;border-color:#dce3ea}
  #gesCustomerReport .ges-payback-kpis b{font-size:12pt}
  #gesCustomerReport .ges-payback-svg{max-height:62mm}
  #gesCustomerReport .ges-payback-svg .gp-bar rect:first-child{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

.ges-finance-source select{min-height:44px}
.ges-finance-source-hint{flex-basis:100%;color:var(--fin-muted)}

.ges-finance-source select:focus-visible{outline:2px solid var(--fin-accent);outline-offset:2px}

.ges-finance-period .ges-finance-source{white-space:nowrap}
/* ── 09.10.2026: Fatura grafiği (Genel Sonuç oben), Faturalar-Tab (Fatura takibi) und Serbest-Piyasa-Tab ───────────────────────── */
#pvInvoicePage,#pvMarketPage{height:auto!important;max-height:none!important;overflow:visible!important;flex-direction:column!important;padding:0 20px 32px!important;color:var(--fin-ink)}
.ges-inv-root,.ges-mkt-root{width:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:16px;padding-top:8px}
.ges-fatura-card,.ges-mkt-panel{background:var(--fin-panel);border:1px solid var(--fin-border);border-radius:14px;padding:20px 22px;color:var(--fin-ink)}
.ges-fatura-card{margin:0 0 16px}
.ges-fatura-card[hidden]{display:none!important}
.ges-fatura-head,.ges-mkt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.ges-fatura-title{display:flex;gap:12px;align-items:flex-start}
.ges-fatura-title h3{font-size:18px;margin:4px 0 2px;line-height:1.3}
.ges-fatura-title small{font-size:12px;color:var(--fin-muted)}
.ges-fatura-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--fin-accent) 13%,transparent);flex:0 0 auto}
.ges-fatura-icon svg,.ges-fatura-seg svg,.ges-mkt-actions svg,.ges-fatura-year svg,.ges-inv-strip-nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ges-fatura-icon svg{width:19px;height:19px;stroke:var(--fin-accent)}
.ges-fatura-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ges-fatura-seg,.ges-mkt-tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--fin-border);border-radius:10px;background:color-mix(in srgb,var(--fin-ink) 3%,var(--fin-panel))}
.ges-fatura-seg button,.ges-mkt-tabs button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--fin-muted);font-weight:650;font-size:13px;padding:7px 12px;border-radius:7px;cursor:pointer}
.ges-fatura-seg button.is-active,.ges-mkt-tabs button.is-active{background:var(--fin-panel);color:var(--fin-ink);box-shadow:0 1px 3px rgba(21,43,67,.14),inset 0 -2px var(--fin-accent)}
.ges-fatura-switch-wrap{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--fin-muted)}
.ges-fatura-switch{position:relative;width:62px;height:30px;border-radius:15px;border:1px solid var(--fin-border);background:color-mix(in srgb,#1baf7a 18%,var(--fin-panel));cursor:pointer;padding:0;transition:background .2s}
.ges-fatura-switch[aria-checked="true"]{background:#1f8a5b;border-color:#1f8a5b}
.ges-fatura-switch i{position:absolute;top:3px;left:3px;min-width:24px;height:24px;padding:0 4px;border-radius:12px;background:#fff;color:#1f8a5b;font-style:normal;font-size:11px;font-weight:800;display:grid;place-items:center;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .2s,transform .2s}
.ges-fatura-switch[aria-checked="true"] i{left:calc(100% - 27px)}
.ges-fatura-switch[aria-checked="false"] i{min-width:34px}
.ges-fatura-switch:focus-visible,.ges-fatura-seg button:focus-visible,.ges-mkt-tabs button:focus-visible{outline:2px solid var(--fin-accent);outline-offset:2px}
.ges-fatura-year{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--fin-border);border-radius:10px;padding:3px}
.ges-fatura-year button,.ges-inv-strip-nav{width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--fin-ink);display:grid;place-items:center;cursor:pointer}
.ges-fatura-year button:disabled{opacity:.35;cursor:default}
.ges-fatura-year strong{min-width:48px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.ges-fatura-kpis,.ges-mkt-kpis,.ges-mkt-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 4px}
.ges-inv-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.ges-fatura-kpis>div,.ges-mkt-kpis>div,.ges-mkt-totals>div{border:1px solid var(--fin-border);border-radius:11px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;background:var(--fin-panel);min-width:0}
.ges-fatura-kpis span,.ges-mkt-kpis span,.ges-mkt-totals span{font-size:12px;color:var(--fin-muted);font-weight:650}
.ges-fatura-kpis strong,.ges-mkt-kpis strong,.ges-mkt-totals strong{font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.3px;overflow-wrap:anywhere}
.ges-fatura-kpis small,.ges-mkt-kpis small,.ges-mkt-totals small{font-size:11px;color:var(--fin-muted);line-height:1.4}
.ges-mkt-kpis>.is-up strong,.ges-mkt-totals>.is-up strong{color:#c0392b}
.ges-mkt-kpis>.is-down strong,.ges-mkt-totals>.is-down strong{color:#1f8a5b}
html[data-theme="dark"] .ges-mkt-kpis>.is-up strong,html[data-theme="dark"] .ges-mkt-totals>.is-up strong{color:#ff9a8c}
html[data-theme="dark"] .ges-mkt-kpis>.is-down strong,html[data-theme="dark"] .ges-mkt-totals>.is-down strong{color:#62d8ac}
.ges-mkt-totals>div{background:color-mix(in srgb,var(--fin-accent) 5%,var(--fin-panel))}
.ges-fatura-body{position:relative;margin-top:10px}
.ges-fatura-chart{position:relative;height:300px}
.ges-fatura-chart[hidden],.ges-fatura-list[hidden],.ges-fatura-kpis[hidden],.ges-mkt-kpis[hidden],.ges-mkt-totals[hidden],.ges-mkt-charts[hidden],.ges-mkt-table[hidden],.ges-mkt-state[hidden],.ges-fatura-state[hidden],.ges-inv-charts[hidden],.ges-inv-charts figure[hidden]{display:none!important}
.ges-fatura-state,.ges-mkt-state{padding:22px 16px;text-align:center;font-size:13px;color:var(--fin-muted);border:1px dashed var(--fin-border);border-radius:10px;margin:12px 0}
/* Gründe im Leerzustand (09.10.2026): je Monatsgruppe eine Zeile, linksbündig unter dem Satz. */
.ges-fatura-why{list-style:none;margin:10px auto 0;padding:0;display:flex;flex-direction:column;gap:4px;width:fit-content;text-align:left;max-width:760px;font-size:12.5px;line-height:1.45;color:var(--fin-ink)}
.ges-fatura-why li{padding-left:14px;position:relative}
.ges-fatura-why li::before{content:'';position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--fin-accent)}
.ges-fatura-state button,.ges-mkt-state button,.ges-mkt-actions button,.ges-mkt-range button,.ges-inv-edit-actions button,.ges-inv-edit-btn{border:1px solid var(--fin-border);background:var(--fin-panel);color:var(--fin-ink);border-radius:8px;padding:7px 12px;font-weight:650;font-size:12.5px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.ges-fatura-card.is-loading .ges-fatura-chart,.ges-mkt-root.is-loading .ges-mkt-charts,.ges-inv-root.is-loading .ges-inv-charts{opacity:.55}
.ges-fatura-note,.ges-mkt-note,.ges-inv-info{font-size:11.5px;line-height:1.55;color:var(--fin-muted);margin:10px 0 0}
.ges-fatura-table,.ges-mkt-tbl{width:100%;border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums;min-width:0!important}
.ges-fatura-table th,.ges-fatura-table td,.ges-mkt-tbl th,.ges-mkt-tbl td{padding:8px 10px;border-bottom:1px solid var(--fin-border);text-align:right;white-space:nowrap}
.ges-fatura-table th:first-child,.ges-fatura-table td:first-child,.ges-mkt-tbl th:first-child,.ges-mkt-tbl td:first-child,.ges-fatura-table td:last-child,.ges-mkt-tbl td:nth-last-child(2){text-align:left}
.ges-fatura-table th,.ges-mkt-tbl th{font-size:11px;color:var(--fin-muted);font-weight:700;position:sticky;top:0;background:var(--fin-panel)}
.ges-fatura-table tfoot td,.ges-mkt-tbl tfoot td{font-weight:750;border-top:2px solid var(--fin-border)}
.ges-fatura-table tr.is-missing td,.ges-mkt-tbl tr.is-missing td{color:var(--fin-muted)}
.ges-fatura-list,.ges-mkt-table{overflow-x:auto;max-height:560px;overflow-y:auto}
.ges-fatura-month{border:0;background:none;padding:0;color:var(--fin-ink);font-weight:650;cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--fin-accent) 50%,transparent);text-underline-offset:3px}
.ges-fatura-month:disabled{cursor:default;text-decoration:none;color:var(--fin-muted)}
.ges-mkt-head h2{font-size:24px;letter-spacing:-.5px;margin:6px 0 4px;line-height:1.25}
.ges-mkt-head p{margin:0;font-size:13px;color:var(--fin-muted)}
.ges-mkt-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0 4px}
.ges-mkt-panel>.ges-mkt-tabs{margin-bottom:2px}
.ges-mkt-range{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--fin-muted)}
.ges-mkt-range label{display:inline-flex;align-items:center;gap:6px}
.ges-mkt-range input,.ges-mkt-range select{border:1px solid var(--fin-border);background:var(--fin-panel);color:var(--fin-ink);border-radius:8px;padding:6px 8px;font-size:13px}
.ges-mkt-charts,.ges-inv-charts{display:flex;flex-direction:column;gap:18px;margin-top:12px}
.ges-mkt-charts figure,.ges-inv-charts figure{margin:0}
.ges-mkt-charts figcaption,.ges-inv-charts figcaption{font-size:12.5px;font-weight:700;color:var(--fin-ink);margin:0 0 6px}
.ges-mkt-chart{position:relative;height:300px}
.ges-mkt-chart.is-energy{height:220px}
.ges-inv-strip-wrap{display:flex;align-items:stretch;gap:10px}
.ges-inv-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;flex:1;padding:2px 2px 8px;scrollbar-width:thin}
.ges-inv-strip-nav{align-self:center;width:40px;height:40px;border-radius:20px;border:1px solid var(--fin-border);background:var(--fin-panel);flex:0 0 auto}
.ges-inv-card{flex:0 0 220px;scroll-snap-align:start;text-align:left;border:1px solid var(--fin-border);border-radius:12px;background:var(--fin-panel);color:var(--fin-ink);padding:14px 16px;display:flex;flex-direction:column;gap:5px;cursor:pointer;font:inherit}
.ges-inv-card:hover:not(:disabled){border-color:var(--fin-accent)}
.ges-inv-card span{font-size:12px;color:var(--fin-muted);font-weight:650}
.ges-inv-card strong{font-size:21px;font-variant-numeric:tabular-nums;letter-spacing:-.3px}
.ges-inv-card small{font-size:12px;font-weight:650}
.ges-inv-card em{font-style:normal;font-size:11px;color:var(--fin-muted)}
.ges-inv-card.is-missing{opacity:.6;cursor:default}
.ges-inv-card.is-warn{border-color:color-mix(in srgb,#c0392b 50%,var(--fin-border))}
.ges-inv-card.is-warn em,.ges-inv-tbl td.is-warn{color:#c0392b;font-weight:700}
html[data-theme="dark"] .ges-inv-card.is-warn em,html[data-theme="dark"] .ges-inv-tbl td.is-warn{color:#ff9a8c}
.ges-inv-tbl td small{display:block;font-size:10.5px;color:var(--fin-muted)}
.ges-inv-edit td{background:color-mix(in srgb,var(--fin-accent) 6%,var(--fin-panel));white-space:normal!important;text-align:left!important}
.ges-inv-edit form{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}
.ges-inv-edit form>strong{flex:1 0 100%;font-size:13px}
.ges-inv-edit label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--fin-muted)}
.ges-inv-edit label.is-wide{flex:1 1 240px}
.ges-inv-edit input{border:1px solid var(--fin-border);background:var(--fin-panel);color:var(--fin-ink);border-radius:7px;padding:7px 9px;font-size:13px;min-width:120px}
.ges-inv-edit-actions{display:flex;gap:8px}
.ges-inv-edit-actions .primary{background:var(--fin-accent);border-color:var(--fin-accent);color:#fff}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media screen and (max-width:1280px){.ges-inv-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media screen and (max-width:900px){.ges-fatura-kpis,.ges-mkt-kpis,.ges-mkt-totals,.ges-inv-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.ges-fatura-card,#pvInvoicePage,#pvMarketPage{display:none!important}}
.ges-inv-tbl td:nth-last-child(2){white-space:normal;min-width:200px;max-width:320px;text-align:left}
.ges-inv-tbl td:last-child{text-align:right}
.ges-battery-period label{white-space:nowrap}
/* İzleme Paneli · Kachel „Üretim tahmini" (09.10.2026): Wert in Cyan wie die Prognoselinie; Badge = Abweichung Gerçekleşen ↔ Tahmin. */
#pvKpiForecast .cyantxt{color:#0e9db8}
html[data-theme="dark"] #pvKpiForecast .cyantxt{color:#22d3ee}
#pvKpiForecast .pv-kpi-badge[hidden]{display:none!important}
#pvKpiForecast.is-up .pv-kpi-badge{background:color-mix(in srgb,#1f8a5b 14%,transparent)!important;color:#1f8a5b!important;border-color:color-mix(in srgb,#1f8a5b 35%,transparent)!important}
#pvKpiForecast.is-down .pv-kpi-badge{background:color-mix(in srgb,#c0392b 12%,transparent)!important;color:#c0392b!important;border-color:color-mix(in srgb,#c0392b 35%,transparent)!important}
html[data-theme="dark"] #pvKpiForecast.is-up .pv-kpi-badge{color:#62d8ac!important}
html[data-theme="dark"] #pvKpiForecast.is-down .pv-kpi-badge{color:#ff9a8c!important}
#pvKpiForecast small{overflow-wrap:anywhere}
#pvFirstDashboard #pvKpiForecast{position:relative}
#pvFirstDashboard #pvKpiForecast .pv-kpi-badge{position:absolute;top:8px;right:8px;padding:3px 7px;border-radius:999px;border:1px solid transparent;font-size:11.5px;font-weight:850;line-height:1;white-space:nowrap;pointer-events:none}
#pvFirstDashboard #pvKpiForecast small,#pvFirstDashboard #pvKpiForecast>span:not(.pv-kpi-badge){white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.3}
#pvFirstDashboard #pvKpiForecast>span:not(.pv-kpi-badge){padding-right:52px}
/* İzleme · ₺-Umschalter der Grafik (09.10.2026, Apollo „GES Fatura Grafiği"): Schalter in der Werkzeugleiste, eigenes Diagramm über der kWh-Grafik. */
.pv-chart-tl-switch{border:0;background:transparent;padding:0 4px;cursor:pointer;display:inline-flex;align-items:center}
.pv-chart-tl-switch[hidden]{display:none!important}
.pv-chart-tl-switch:disabled{opacity:.4;cursor:default}
.pv-tl-track{position:relative;display:block;width:56px;height:26px;border-radius:13px;background:color-mix(in srgb,#1baf7a 16%,var(--surface,#fff));border:1px solid var(--line,#dce4ec);transition:background .2s}
.pv-tl-track i{position:absolute;top:2px;left:2px;min-width:28px;height:20px;padding:0 5px;border-radius:10px;background:#fff;color:#1f8a5b;font-style:normal;font-size:10.5px;font-weight:800;display:grid;place-items:center;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .2s}
.pv-chart-tl-switch[aria-checked="true"] .pv-tl-track{background:#1f8a5b;border-color:#1f8a5b}
.pv-chart-tl-switch[aria-checked="true"] .pv-tl-track i{left:calc(100% - 24px);min-width:20px}
.pv-chart-tl-switch:focus-visible{outline:2px solid var(--gold,#b87900);outline-offset:2px;border-radius:14px}
.pv-tl-chart{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;gap:6px;padding:6px 4px 2px;background:var(--surface,#fff);border-radius:inherit}
.pv-tl-chart[hidden]{display:none!important}
html[data-theme="dark"] .pv-tl-chart{background:var(--surface,#0f2236)}
.pv-tl-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted,#63758a)}
.pv-tl-head strong{color:var(--text,#152b43);font-size:13px}
.pv-tl-canvas{position:relative;flex:1 1 auto;min-height:160px}
.pv-tl-chart.is-empty .pv-tl-canvas{display:none}
.pv-tl-chart p{margin:0;font-size:11px;line-height:1.45;color:var(--muted,#63758a)}
.pv-tl-chart.is-empty p{margin:auto;text-align:center;font-size:13px;padding:24px}
/* Kundenzugang (09.10.2026, Nutzerwunsch): Knöpfe „Müşteri özeti · PDF" und „Müşteri özeti · telefon" ausgeblendet. */
body.ges-role-customer #gesV6FinanceMain [data-v6-finance-action="summary"],body.ges-role-customer #gesV6FinanceMain [data-v6-finance-action="mobile"]{display:none!important}
