:root{
  --ia-bg:#FFFFFF; --ia-surface:#F6F7F9; --ia-ink:#12233A; --ia-muted:#5A6779;
  --ia-line:#E2E6EC; --ia-accent:#B08D4F; --ia-pos:#1F6B4F; --ia-caution:#8A5A12;
  --ia-deep:#12233A; --ia-ondeep:#F7F8FA; --ia-ondeep-link:#C6CDD8; --ia-ondeep-muted:#9AA4B4;
  --ia-head:"Newsreader",Georgia,serif;
  --ia-body:"IBM Plex Sans",system-ui,sans-serif;
  --ia-mono:"IBM Plex Mono",ui-monospace,monospace;
  --ia-r-sm:2px; --ia-r-md:3px;
}

body{background:var(--ia-bg);color:var(--ia-ink);font-family:var(--ia-body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--ia-head);font-weight:500;color:var(--ia-ink)}
a{color:var(--ia-ink)}

.ia-h1{font-size:clamp(38px,5vw,68px);line-height:1.05;letter-spacing:-0.015em;margin:0 0 22px}
.ia-h2{font-size:clamp(26px,3vw,38px);line-height:1.12;letter-spacing:-0.01em;margin:0 0 18px}
.ia-h3{font-size:22px;line-height:1.2;margin:0 0 16px}
.ia-h4{font-size:17px;line-height:1.25;margin:34px 0 12px}
.ia-lead{font-size:18px;color:var(--ia-muted);max-width:64ch;margin:0 0 30px}
.ia-leer{font-family:var(--ia-body);color:var(--ia-muted);max-width:64ch;margin:0}
.ia-hinweis{font-size:13px;line-height:1.6;color:var(--ia-muted);border-top:1px solid var(--ia-line);padding-top:16px;margin-top:44px;max-width:82ch}
.ia-pos{color:var(--ia-pos)}
.ia-neg{color:var(--ia-caution)}
.ia-label{font-family:var(--ia-body);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ia-muted)}

/* Bronzene Regel ueber einer Ueberschrift */
.ia-regel{display:block;width:64px;height:1px;background:var(--ia-accent);margin:0 0 26px}
.ia-regel--mitte{margin:0 auto 26px}

/* Buttons */
.ia-btn{display:inline-block;background:var(--ia-ink);color:#fff;font-family:var(--ia-body);font-weight:500;font-size:16px;line-height:1;padding:17px 30px;border:0;border-radius:var(--ia-r-md);cursor:pointer;text-decoration:none;transition:background .15s ease}
.ia-btn:hover{background:#0A1626;color:#fff}
.ia-btn:focus-visible{outline:2px solid var(--ia-accent);outline-offset:2px}
.ia-btn[disabled]{opacity:.45;cursor:default}
.ia-btn--linie{background:transparent;color:var(--ia-ink);border:1px solid var(--ia-ink)}
.ia-btn--linie:hover{background:var(--ia-ink);color:#fff}

/* Kennzahlenband im Geschaeftsberichtsstil */
.ia-kennzahlen{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ia-line);border-bottom:1px solid var(--ia-line)}
.ia-kennzahl{padding:38px 28px 38px 0;border-right:1px solid var(--ia-line)}
.ia-kennzahl:last-child{border-right:0}
.ia-kennzahl__wert{display:block;font-family:var(--ia-head);font-weight:500;font-size:44px;line-height:1;letter-spacing:-0.02em}
.ia-kennzahl__label{display:block;margin-top:14px;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ia-muted)}

/* Einfuegefeld */
.ia-einfuegen{max-width:820px}
.ia-einfuegen textarea{width:100%;min-height:190px;font-family:var(--ia-mono);font-size:14px;line-height:1.6;color:var(--ia-ink);background:#fff;border:1px solid var(--ia-line);border-radius:var(--ia-r-md);padding:18px 20px;resize:vertical}
.ia-einfuegen textarea:focus{outline:0;border-color:var(--ia-ink)}
.ia-einfuegen__hilfe{font-size:13px;color:var(--ia-muted);margin:10px 0 22px;max-width:70ch}
.ia-einfuegen__aktionen{display:flex;gap:14px;align-items:center;flex-wrap:wrap}

/* Formularfelder */
.ia-feld{display:flex;flex-direction:column;gap:7px;min-width:0}
.ia-feld label{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ia-muted)}
.ia-feld input,.ia-feld select{font-family:var(--ia-mono);font-size:15px;color:var(--ia-ink);background:#fff;border:1px solid var(--ia-line);border-radius:var(--ia-r-sm);padding:12px 13px;width:100%}
.ia-feld input:focus,.ia-feld select:focus{outline:0;border-color:var(--ia-ink)}
.ia-feld--erkannt input,.ia-feld--erkannt select{border-color:var(--ia-accent)}
.ia-feld--fehlt input,.ia-feld--fehlt select{border-color:var(--ia-caution)}
.ia-gitter{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}
.ia-span2{grid-column:span 2}

/* Ergebnis */
.ia-ergebnis{background:var(--ia-surface);border-radius:var(--ia-r-md);padding:44px}
.ia-ergebnis__urteil{font-family:var(--ia-head);font-weight:500;font-size:clamp(22px,2.4vw,30px);line-height:1.22;margin:0 0 10px;max-width:26ch}
.ia-ergebnis__kopf{display:flex;align-items:baseline;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.ia-ergebnis__gross{font-family:var(--ia-head);font-weight:500;font-size:56px;line-height:1;letter-spacing:-0.02em}
.ia-ergebnis__einheit{font-family:var(--ia-mono);font-size:15px;color:var(--ia-muted)}

/* Tabellen */
.ia-tabelle{width:100%;border-collapse:collapse;font-size:15px}
.ia-tabelle th,.ia-tabelle td{border-bottom:1px solid var(--ia-line);padding:13px 0;text-align:left;font-weight:400}
.ia-tabelle th{color:var(--ia-muted);padding-right:20px;font-family:var(--ia-body)}
.ia-tabelle td{font-family:var(--ia-mono);font-weight:500;text-align:right;white-space:nowrap}
.ia-tabelle__summe th,.ia-tabelle__summe td{border-top:1px solid var(--ia-ink);border-bottom:0;font-weight:600;padding-top:14px}
.ia-tabelle__summe th{color:var(--ia-ink)}

.ia-risiken{margin:0;padding-left:20px;color:var(--ia-muted);font-size:15px}
.ia-risiken li{margin-bottom:7px}

/* Xpro Kopf und Fuss */
.xpro-theme-builder-header{position:relative;z-index:20;background:#fff}
.xpro-theme-builder-header a{text-decoration:none}
#xpro-theme-builder-footer{background:var(--ia-deep)}
#xpro-theme-builder-footer a{color:var(--ia-ondeep-link);text-decoration:none;transition:color .15s ease}
#xpro-theme-builder-footer a:hover{color:#FFFFFF}
#xpro-theme-builder-footer .elementor-icon-list-icon{display:none}
#xpro-theme-builder-footer .elementor-icon-list-item{margin-left:0}

/* Mobil */
@media (max-width:1024px){
  .ia-gitter{grid-template-columns:1fr 1fr}
  .ia-kennzahlen{grid-template-columns:1fr 1fr}
  .ia-kennzahl{padding-right:20px}
  .ia-kennzahl:nth-child(2n){border-right:0}
  .ia-ergebnis{padding:30px}
}
@media (max-width:600px){
  .ia-gitter{grid-template-columns:1fr}
  .ia-span2{grid-column:span 1}
  .ia-kennzahlen{grid-template-columns:1fr}
  .ia-kennzahl{border-right:0;border-bottom:1px solid var(--ia-line);padding:26px 0}
  .ia-kennzahl:last-child{border-bottom:0}
  .ia-einfuegen__aktionen .ia-btn{width:100%;text-align:center}
}
