/* EVMM — Wissensbereich. Gleiche Tokens wie die Startseite, ruhiger gesetzt. */
:root{
  --void:#0b0e12; --bg:#0d1116; --surface:#131820; --surface2:#1a212a;
  --ink:#eef2f5; --ink2:#9aa5b1; --ink3:#69737e;
  --line:#232c37; --line2:#2e3945;
  --amber:#e8a94e; --amber-dim:#b8823a; --amber-ink:#180f02; --amber-soft:rgba(232,169,78,.10);
  --cyan:#6fd7c4; --cyan-soft:rgba(111,215,196,.09); --cyan-line:rgba(111,215,196,.24);
  --sans:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  --wrap:1140px; --r:12px; --ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--void);color:var(--ink);
  font:400 17px/1.7 var(--sans);-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(120% 60% at 50% 0%, rgba(232,169,78,.055), transparent 60%);
  background-repeat:no-repeat}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:3px}
h1,h2,h3{letter-spacing:-.024em;text-wrap:balance;margin:0;font-weight:700}
p{margin:0}
.kicker{font:600 11.5px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink3)}

/* Nav */
header.nav{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60;
  background:rgba(11,14,18,.86);backdrop-filter:blur(14px) saturate(140%)}
header.nav .wrap{max-width:1140px;display:flex;align-items:center;justify-content:space-between;height:70px;gap:20px}
.logo{font:700 21px/1 var(--sans);letter-spacing:-.03em;display:inline-flex;align-items:center;gap:9px}
.logo .mk{width:11px;height:11px;border-radius:2px;background:var(--amber)}
.navlinks{display:flex;gap:28px;font-size:15px;color:var(--ink2)}
.navlinks a:hover{color:var(--ink)}
.btn{display:inline-block;background:var(--amber);color:var(--amber-ink);padding:11px 20px;border-radius:8px;
  font-weight:700;font-size:15px;transition:transform .2s var(--ease),box-shadow .25s var(--ease);
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 8px 22px -12px rgba(232,169,78,.8)}
.btn:hover{transform:translateY(-1.5px)}

/* Artikel */
main{padding:52px 0 88px}
.zurueck{display:inline-block;font:500 13.5px/1 var(--mono);color:var(--ink3);margin-bottom:26px;letter-spacing:.04em}
.zurueck:hover{color:var(--amber)}

.post-head{max-width:800px;padding-bottom:34px;margin-bottom:44px;border-bottom:1px solid var(--line)}
.post-head .kicker{display:block;margin-bottom:16px}
.post-head h1{font-size:clamp(30px,4.4vw,44px);line-height:1.12;letter-spacing:-.032em;margin-bottom:16px}
.meta{font:500 12.5px/1 var(--mono);color:var(--ink3);letter-spacing:.05em}
.meta i{font-style:normal;margin:0 8px;opacity:.5}

/* Zweispaltiger Aufbau: Text links, klebende Seitenspalte rechts */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:56px;align-items:start}
.article-main{min-width:0;max-width:740px}

.bluf{border-left:2px solid var(--amber);padding:4px 0 4px 22px;margin-bottom:34px;
  font-size:19px;color:var(--ink);line-height:1.6}
.bluf strong{font-weight:700}
.bluf p{margin:0;color:var(--ink)}

/* Seitenspalte */
.sidebar{position:sticky;top:94px;display:flex;flex-direction:column;gap:14px}
.karte{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:20px 22px}
.karte .kh{font:600 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);
  margin-bottom:14px}
.karte p{font-size:14px;color:var(--ink2);line-height:1.6;margin:0 0 14px}
.karte .btn{width:100%;text-align:center;padding:10px 16px;font-size:14px}
.klink{font:600 13px/1 var(--mono);color:var(--cyan);letter-spacing:.03em}
.klink:hover{color:var(--ink)}
.karte.demo{border-color:var(--cyan-line);background:var(--cyan-soft)}
.karte.demo .kh{color:var(--cyan)}
.karte .wcard{display:block;padding:13px 0;border-top:1px solid var(--line)}
.karte .wcard:first-of-type{border-top:none;padding-top:0}
.karte .wcard b{display:block;font-size:14.5px;line-height:1.4;letter-spacing:-.015em;margin-top:6px;font-weight:600}
.karte .wcard:hover b{color:var(--amber)}
.karte .wcard .kicker{font-size:10px}

/* Inhaltsverzeichnis */
.toc{margin:0;padding:0;list-style:none;counter-reset:t;display:flex;flex-direction:column;gap:0}
.toc li{position:relative;padding:0}
.toc a{display:block;padding:7px 0 7px 18px;font-size:13.5px;color:var(--ink2);line-height:1.45;
  border-left:1px solid var(--line);margin-left:19px;transition:color .2s,border-color .2s}
.toc a::before{counter-increment:t;content:counter(t);position:absolute;left:0;top:7px;
  width:14px;text-align:right;font:600 10px/1.9 var(--mono);color:var(--ink3)}
.toc a:hover::before{color:var(--amber)}
.toc a:hover{color:var(--amber);border-left-color:var(--amber)}
.toc-mobile{display:none;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);
  padding:16px 20px;margin-bottom:34px}
.toc-mobile summary{cursor:pointer;list-style:none;font:600 10.5px/1 var(--mono);letter-spacing:.14em;
  text-transform:uppercase;color:var(--amber);display:flex;justify-content:space-between;align-items:center}
.toc-mobile summary::-webkit-details-marker{display:none}
.toc-mobile summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--amber);
  border-bottom:2px solid var(--amber);transform:rotate(45deg) translateY(-2px)}
.toc-mobile[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.toc-mobile .toc{margin-top:12px}

.artikel h2{font-size:26px;margin:52px 0 16px;letter-spacing:-.028em;scroll-margin-top:90px}
.artikel h3{font-size:19.5px;margin:34px 0 12px;color:var(--ink)}
.artikel p{margin-bottom:20px;color:var(--ink2)}
.artikel p strong,.artikel li strong{color:var(--ink);font-weight:600}
.artikel a:not(.btn):not(.wcard){color:var(--cyan);border-bottom:1px solid rgba(111,215,196,.32)}
.artikel a:not(.btn):not(.wcard):hover{border-bottom-color:var(--cyan)}
.artikel ul,.artikel ol{margin:0 0 22px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:11px}
.artikel li{color:var(--ink2);padding-left:24px;position:relative}
.artikel ul li::before{content:"";position:absolute;left:0;top:12px;width:10px;height:2px;background:var(--amber);border-radius:2px}
.artikel ol{counter-reset:li}
.artikel ol li::before{counter-increment:li;content:counter(li) ".";position:absolute;left:0;top:0;
  font:700 13px/1.75 var(--mono);color:var(--amber)}

/* Tabellen — bewusst als echtes HTML, sie werden von KI-Systemen zitiert */
.tabelle{overflow-x:auto;margin:0 0 26px;border:1px solid var(--line);border-radius:var(--r)}
table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
caption{caption-side:bottom;padding:12px 16px;font:500 11.5px/1.5 var(--mono);color:var(--ink3);text-align:left;
  border-top:1px solid var(--line);letter-spacing:.03em}
th,td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
thead th{background:var(--surface);font:600 11.5px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
tbody tr:last-child td{border-bottom:none}
tbody td{color:var(--ink2)}
tbody td:first-child{color:var(--ink);font-weight:600}

/* Hinweiskasten */
.kasten{border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:22px 26px;margin:0 0 26px}
.kasten .kt{font:600 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);display:block;margin-bottom:12px}
.kasten p:last-child{margin-bottom:0}
.kasten.warn .kt{color:var(--cyan)}
.kasten.warn{border-color:var(--cyan-line);background:var(--cyan-soft)}

/* FAQ */
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-of-type{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;padding:20px 0;font-size:17px;font-weight:600;list-style:none;
  display:flex;justify-content:space-between;gap:20px;align-items:center}
.faq summary:hover{color:var(--amber)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:10px;height:10px;flex:none;border-right:2px solid var(--amber);
  border-bottom:2px solid var(--amber);transform:rotate(45deg) translateY(-3px);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.faq .a{padding:0 0 22px;color:var(--ink2);font-size:16px}
.faq .a p{margin-bottom:14px}
.faq .a p:last-child{margin-bottom:0}

/* CTA */
.ctacard{margin-top:56px;border:1px solid var(--line2);border-radius:18px;padding:44px 38px;text-align:center;
  background:linear-gradient(158deg,rgba(18,23,30,.97),rgba(9,12,16,.95) 70%);position:relative;overflow:hidden}
.ctacard::before{content:"";position:absolute;inset:-40% -10% auto;height:180%;pointer-events:none;
  background:radial-gradient(50% 50% at 50% 0%, rgba(232,169,78,.16), transparent 70%)}
.ctacard > *{position:relative}
.ctacard h2{font-size:27px;margin:0 0 14px;letter-spacing:-.03em}
.ctacard p{color:var(--ink2);max-width:52ch;margin:0 auto 26px;font-size:16.5px}

/* Übersicht */
.index .wrap{max-width:880px}
.index h1{font-size:clamp(32px,5vw,46px);line-height:1.1;margin:16px 0 18px}
.index .lead{color:var(--ink2);font-size:18.5px;max-width:60ch;margin-bottom:48px}
.liste{display:flex;flex-direction:column;gap:16px}
.eintrag{display:block;border:1px solid var(--line);border-radius:var(--r);padding:30px;background:var(--surface);
  transition:border-color .3s var(--ease),transform .3s var(--ease)}
.eintrag:hover{border-color:var(--line2);transform:translateY(-2px)}
.ekopf{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.edatum{font:500 11.5px/1 var(--mono);color:var(--ink3);letter-spacing:.05em}
.eintrag h2{font-size:23px;line-height:1.25;margin-bottom:10px}
.eintrag p{color:var(--ink2);font-size:16px;margin-bottom:16px}
.mehr{font:600 13px/1 var(--mono);color:var(--amber);letter-spacing:.06em}

/* Fuß */
footer{border-top:1px solid var(--line);padding:44px 0 56px;color:var(--ink3);font-size:14.5px;margin-top:20px}
footer .wrap{max-width:1140px}
.fgrid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:flex-start}
.flinks{display:flex;gap:24px;flex-wrap:wrap}
.flinks a:hover{color:var(--ink2)}

@media (max-width:1000px){
  .layout{grid-template-columns:1fr;gap:0}
  .article-main{max-width:none}
  .sidebar{position:static;margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
  .toc-desktop{display:none}
  .toc-mobile{display:block}
}
@media (max-width:760px){
  .navlinks{display:none}
  main{padding:36px 0 64px}
  .sidebar{grid-template-columns:1fr}
  .ctacard{padding:34px 24px}
  .eintrag{padding:24px}
  .post-head{margin-bottom:32px;padding-bottom:26px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
