:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1b1d24;background:#f4f5f8;line-height:1.5}*{box-sizing:border-box}body{margin:0}.shell{max-width:1380px;margin:auto;padding:28px 18px 56px}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}.topbar h1{margin:6px 0 4px;font-size:clamp(1.9rem,3vw,2.6rem)}.topbar p,.sub{margin:4px 0;color:#667085}.header-actions,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.status,.pill{background:#f1ebff;color:#5b21b6;border-radius:999px;padding:8px 12px;font-size:.88rem;white-space:nowrap}.sim-nav{position:sticky;top:calc(var(--seto-global-h) + 8px);z-index:30;display:flex;gap:6px;overflow:auto;padding:8px;margin:0 0 16px;border:1px solid #d9dee7;border-radius:14px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.sim-nav a{white-space:nowrap;text-decoration:none;color:#667085;font-size:13px;font-weight:800;padding:8px 11px;border-radius:10px}.sim-nav a.active,.sim-nav a:hover{background:#f1ebff;color:#5b21b6}.card{background:#fff;border:1px solid #d9dee7;border-radius:16px;padding:22px;margin:16px 0;box-shadow:0 8px 28px rgba(27,29,36,.05)}.card h2,.card h3{margin:0 0 8px}.section-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.btn{border:0;border-radius:12px;padding:11px 15px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:#6d28d9;color:#fff}.secondary{background:#fafbfc;color:#1b1d24;border:1px solid #d9dee7}.warning-box{border-left:4px solid #6d28d9;background:#faf8ff;padding:14px 16px;border-radius:12px;margin:12px 0;color:#4c1d95}.settings-strip{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:.8rem;font-weight:800;color:#667085}.field input,.field select{width:100%;border:1px solid #d9dee7;border-radius:11px;padding:10px 11px;background:#fff;color:#1b1d24;font:inherit;min-height:44px}.compare-form{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr) minmax(0,1fr);gap:0;border:1px solid #d9dee7;border-radius:15px;overflow:hidden;margin-top:14px}.compare-form>div{padding:10px 12px;border-bottom:1px solid #e7e9ee;min-width:0}.compare-form>div:nth-last-child(-n+3){border-bottom:0}.compare-form .head{font-weight:900;background:#fafbfc}.compare-form .label{font-weight:800;color:#475467;background:#fafbfc;display:flex;align-items:center}.compare-form input,.compare-form select{width:100%;border:1px solid #d9dee7;border-radius:10px;padding:9px 10px;background:#fff;color:#1b1d24;font:inherit}.compare-form input[disabled]{background:#f4f5f8;color:#667085}.compare-form .changed{border-color:#8b5cf6;background:#fbf9ff}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.advanced-panel{border:1px solid #e4e7ec;border-radius:14px;padding:16px;background:#fafbfc}.advanced-panel h3{font-size:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.fs-line{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;background:#fff;border:1px solid #e4e7ec;border-radius:11px}.fs-line strong{font-size:1.08rem}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:16px 0}.kpi{background:#fff;border:1px solid #d9dee7;border-radius:15px;padding:16px}.kpi span{display:block;color:#667085;font-size:.8rem}.kpi strong{display:block;margin-top:5px;font-size:1.15rem}.kpi.delta strong.negative{color:#b42318}.kpi.delta strong.positive{color:#067647}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.result-card{border:1px solid #d9dee7;border-radius:14px;padding:17px;background:#fafbfc}.result-card h3{display:flex;justify-content:space-between;gap:12px}.summary-list{display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin-top:12px}.summary-list span{color:#667085}.summary-list strong{text-align:right}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:right;padding:10px;border-bottom:1px solid #e7e9ee;font-variant-numeric:tabular-nums}th:first-child,td:first-child{text-align:left}th{font-size:.77rem;color:#667085;text-transform:uppercase;letter-spacing:.03em}.delta-positive{color:#067647;font-weight:800}.delta-negative{color:#b42318;font-weight:800}.month-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.month-toolbar select{border:1px solid #d9dee7;border-radius:11px;padding:10px;background:#fff;font:inherit}.notice-list{margin:10px 0 0;padding-left:20px;color:#667085}.notice-list li+li{margin-top:6px}.year-hero{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.year-box{border:1px solid #d9dee7;border-radius:15px;padding:18px;background:#fff}.year-box span{color:#667085;font-size:.8rem}.year-box strong{display:block;font-size:1.45rem;margin-top:5px}.year-box.accent{background:#faf8ff;border-color:#d8c7ff}.mini{font-size:.82rem;color:#667085}.empty{padding:20px;text-align:center;color:#667085}.error{background:#fff2f0;color:#b42318;border:1px solid #fecdca;border-radius:12px;padding:12px 14px;margin-top:12px}.checkline{display:flex;align-items:center;gap:9px;font-size:.88rem}.checkline input{width:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html[data-theme="dark"] body{background:#0f1117;color:#f3f4f8}html[data-theme="dark"] .card,html[data-theme="dark"] .kpi,html[data-theme="dark"] .year-box{background:#191d27;border-color:#343b49;box-shadow:none}html[data-theme="dark"] .sub,html[data-theme="dark"] .topbar p,html[data-theme="dark"] .kpi span,html[data-theme="dark"] .mini,html[data-theme="dark"] .notice-list,html[data-theme="dark"] .summary-list span{color:#a7afc0}html[data-theme="dark"] .sim-nav{background:rgba(25,29,39,.96);border-color:#343b49}html[data-theme="dark"] .secondary,html[data-theme="dark"] .advanced-panel,html[data-theme="dark"] .result-card,html[data-theme="dark"] .compare-form .head,html[data-theme="dark"] .compare-form .label{background:#222836;color:#f3f4f8;border-color:#343b49}html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] .fs-line{background:#191d27!important;color:#f3f4f8!important;border-color:#343b49!important}html[data-theme="dark"] th,html[data-theme="dark"] td,html[data-theme="dark"] .compare-form>div{border-color:#343b49}html[data-theme="dark"] .warning-box,html[data-theme="dark"] .year-box.accent{background:#211a33;color:#ddd1ff;border-color:#5b21b6}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}.year-hero{grid-template-columns:1fr 1fr}.settings-strip{grid-template-columns:1fr 1fr}}@media(max-width:820px){.topbar,.section-head{flex-direction:column;align-items:stretch}.advanced-grid,.result-grid{grid-template-columns:1fr}.compare-form{grid-template-columns:minmax(110px,.7fr) minmax(0,1fr) minmax(0,1fr)}.compare-form>div{padding:9px 7px}.form-grid{grid-template-columns:1fr}.year-hero{grid-template-columns:1fr}.settings-strip{grid-template-columns:1fr}}@media(max-width:560px){.kpis{grid-template-columns:1fr 1fr}.compare-form{font-size:.86rem}.compare-form input,.compare-form select{padding:8px 6px}.card{padding:16px}.shell{padding-left:10px;padding-right:10px}}

/* SETO 1.0.52 – H-02 Mobile/Responsive */
.table-wrap{
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-gutter:stable;
}
@media(max-width:620px){
  .shell{padding-top:18px;padding-bottom:40px}
  .topbar{gap:12px;margin-bottom:12px}
  .topbar h1{font-size:clamp(1.55rem,8vw,2rem)}
  .header-actions{display:grid;grid-template-columns:1fr;align-items:stretch;width:100%}
  .header-actions .btn,.header-actions .status{width:100%;white-space:normal;text-align:center}
  .sim-nav{margin-left:-2px;margin-right:-2px;padding:6px;scrollbar-width:none}
  .sim-nav::-webkit-scrollbar{display:none}
  .sim-nav a{min-height:40px;display:flex;align-items:center}
  .compare-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:visible;border-radius:12px}
  .compare-form>div{padding:9px 8px}
  .compare-form>div:nth-child(3n+1){grid-column:1/-1;border-bottom:0;background:#fafbfc}
  .compare-form>div:nth-child(1){display:none}
  .compare-form>div:nth-child(2),.compare-form>div:nth-child(3){position:sticky;top:calc(var(--seto-global-h) + 54px);z-index:3;background:#fafbfc}
  .compare-form .label{padding-top:12px;padding-bottom:5px}
  .compare-form input,.compare-form select{min-height:44px;font-size:16px}
  .kpis{grid-template-columns:1fr}
  .result-card{padding:14px}
  .result-card h3{align-items:flex-start;flex-direction:column}
  .month-toolbar{align-items:stretch;flex-direction:column}
  .month-toolbar select{width:100%;min-height:44px;font-size:16px}
  .table-wrap{margin-left:-4px;margin-right:-4px;padding-bottom:4px}
  .table-wrap table{min-width:640px}
  .table-wrap th:first-child,.table-wrap td:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 #e7e9ee}
  .table-wrap th:first-child{z-index:2;background:#fafbfc}
  .year-box{padding:15px}
}
@media(max-width:620px) and (orientation:landscape){
  .shell{padding-top:10px}
  .topbar h1{font-size:1.45rem}
  .topbar p{display:none}
  .header-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .header-actions .status{grid-column:1/-1;padding:6px 10px}
  .card{margin:10px 0}
}
html[data-theme="dark"] .compare-form>div:nth-child(3n+1),
html[data-theme="dark"] .compare-form>div:nth-child(2),
html[data-theme="dark"] .compare-form>div:nth-child(3){background:#222836}
html[data-theme="dark"] .table-wrap th:first-child{background:#222836;box-shadow:1px 0 0 #343b49}
html[data-theme="dark"] .table-wrap td:first-child{background:#191d27;box-shadow:1px 0 0 #343b49}

/* H-04 Simulation verständlicher – eingeführt in SETO 1.0.54 */
.source-legend{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.source-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900;line-height:1.2;border:1px solid transparent;white-space:nowrap}
.source-confirmed{background:#eaf6ee;color:#137333;border-color:#b7dfc3}
.source-profile{background:#eaf2ff;color:#0057b8;border-color:#bfd5f5}
.source-forecast{background:#fff4d6;color:#7a4d00;border-color:#efd58c}
.source-fallback{background:#fff0ee;color:#b42318;border-color:#f5c4bf}
.legend-help{margin:8px 0 14px}
.assumption-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.assumption-columns>article{border:1px solid #e4e7ec;border-radius:14px;padding:14px;background:#fafbfc;min-width:0}
.assumption-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:0}
.assumption-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e7e9ee}
.assumption-item:last-child{border-bottom:0}
.assumption-item>div:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}
.assumption-item>div:first-child span{color:#667085;font-size:.76rem;line-height:1.35}
.assumption-value{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:130px}
.assumption-value b{font-size:.9rem;font-variant-numeric:tabular-nums}
.cost-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}
.cost-grid article{border:1px solid #e4e7ec;border-radius:13px;padding:14px;background:#fafbfc;min-width:0}
.cost-grid span{display:block;color:#667085;font-size:.77rem}
.cost-grid strong{display:block;margin-top:5px;font-size:1.08rem;font-variant-numeric:tabular-nums}
.export-bar{display:flex;align-items:center;justify-content:space-between;gap:18px}

html[data-theme="dark"] .assumption-columns>article,
html[data-theme="dark"] .cost-grid article{background:#222836;border-color:#343b49}
html[data-theme="dark"] .assumption-item{border-color:#343b49}
html[data-theme="dark"] .assumption-item>div:first-child span,
html[data-theme="dark"] .cost-grid span{color:#a7afc0}
html[data-theme="dark"] .source-confirmed{background:#183b27;color:#8ce5aa;border-color:#2e6d45}
html[data-theme="dark"] .source-profile{background:#17324f;color:#91c4ff;border-color:#315b87}
html[data-theme="dark"] .source-forecast{background:#453819;color:#f2cf79;border-color:#705b29}
html[data-theme="dark"] .source-fallback{background:#4a2423;color:#ffaaa4;border-color:#7b3f3c}

@media(max-width:1000px){.cost-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.assumption-columns{grid-template-columns:1fr}.source-legend{justify-content:flex-start}.export-bar{align-items:stretch;flex-direction:column}}
@media(max-width:620px){.assumption-item{grid-template-columns:1fr;gap:7px}.assumption-value{align-items:flex-start;text-align:left;min-width:0}.cost-grid{grid-template-columns:1fr 1fr}.cost-grid article:first-child{grid-column:1/-1}.source-badge{white-space:normal}}

@media print{
  @page{size:A4 landscape;margin:10mm}
  body{background:#fff!important;color:#111!important;font-size:9pt}
  .shell{max-width:none;padding:0}
  .no-print,.sim-nav{display:none!important}
  .topbar{margin-bottom:8px}
  .topbar h1{font-size:20pt}
  .topbar p{color:#444!important}
  .warning-box{margin:6px 0 10px;padding:8px 10px;background:#f7f4ff!important;color:#222!important;border-left-color:#6d28d9!important}
  .card,.year-box,.assumption-columns>article,.cost-grid article{box-shadow:none!important;background:#fff!important;border-color:#bbb!important;break-inside:avoid}
  .card{padding:12px;margin:9px 0}
  .year-hero{gap:8px}
  .year-box{padding:11px}
  .year-box strong{font-size:14pt}
  .source-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .assumption-item>div:first-child span,.cost-grid span,.sub,.mini,.notice-list{color:#444!important}
  table{min-width:0;font-size:8pt}
  th,td{padding:5px 6px}
  .table-wrap{overflow:visible!important}
}
