@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800&family=Public+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root{
  --ink:#14212D; --paper:#F4F6F5; --surface:#FFFFFF; --surface-2:#EFF2F1;
  --line:#D6DEDD; --muted:#5C6B70; --brass:#B3672B; --brass-ink:#FFFFFF; --brass-soft:#F1E1D2;
  --teal:#3E6B63; --teal-soft:#DCEAE7; --slate:#5B7A8C; --slate-soft:#E1E7EA;
  --good:#3F7D52; --shadow: 0 1px 2px rgba(20,33,45,.06), 0 8px 24px rgba(20,33,45,.08);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ink:#EDF1F1; --paper:#0F171E; --surface:#17222B; --surface-2:#1D2932;
    --line:#2B3944; --muted:#90A0A6; --brass:#D98A4B; --brass-ink:#1B1108; --brass-soft:#3A2A1C;
    --teal:#7CB6AA; --teal-soft:#1C302C; --slate:#8CA6B5; --slate-soft:#243139;
    --good:#6FBE84; --shadow: 0 1px 2px rgba(0,0,0,.3), 0 12px 32px rgba(0,0,0,.4);
  }
}
:root[data-theme="dark"]{
  --ink:#EDF1F1; --paper:#0F171E; --surface:#17222B; --surface-2:#1D2932;
  --line:#2B3944; --muted:#90A0A6; --brass:#D98A4B; --brass-ink:#1B1108; --brass-soft:#3A2A1C;
  --teal:#7CB6AA; --teal-soft:#1C302C; --slate:#8CA6B5; --slate-soft:#243139;
  --good:#6FBE84; --shadow: 0 1px 2px rgba(0,0,0,.3), 0 12px 32px rgba(0,0,0,.4);
}

*{ box-sizing:border-box; }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Public Sans", system-ui, sans-serif; -webkit-font-smoothing:antialiased;
}
h1,h2,h3{ font-family:"Archivo", sans-serif; }
p{ margin:0; }
a{ color:inherit; }
.wrap{ max-width:1180px; margin:0 auto; padding:0 24px; }

/* ---------- Nav (identisch zur Startseite) ---------- */
.site-nav{
  position:sticky; top:0; z-index:20; background:color-mix(in srgb, var(--surface) 92%, transparent);
  backdrop-filter:blur(8px); border-bottom:1px solid var(--line);
}
.site-nav .wrap{ height:64px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.wordmark{ display:flex; align-items:center; gap:8px; text-decoration:none; flex:none; }
.wordmark svg{ width:22px; height:22px; flex:none; color:var(--brass); }
.wordmark span{ font-family:"Archivo", sans-serif; font-weight:800; font-size:1rem; letter-spacing:.01em; }
.wordmark .dom{ color:var(--muted); font-weight:600; }
.nav-links{ display:flex; align-items:center; gap:28px; font-size:.86rem; font-weight:600; }
.nav-links a{ color:var(--muted); text-decoration:none; }
.nav-links a:hover{ color:var(--ink); }
@media (max-width:860px){ .nav-links{ display:none; } }

/* ---------- Seiten-Kopf ---------- */
.page-hd{ padding:48px 0 40px; border-bottom:1px solid var(--line); }
.breadcrumb{ font-size:.82rem; color:var(--muted); margin-bottom:16px; }
.breadcrumb a{ color:var(--muted); text-decoration:none; }
.breadcrumb a:hover{ color:var(--ink); }
.breadcrumb-sep{ margin:0 8px; }
.page-hd h1{ font-size:2rem; font-weight:800; margin:0 0 10px; letter-spacing:-.005em; }
.page-hd .lead{ font-size:.95rem; color:var(--muted); }

/* ---------- Inhalt ---------- */
.prose{ max-width:760px; margin:0 auto; padding:52px 24px 84px; line-height:1.65; }
.prose h2{ font-size:1.3rem; margin:40px 0 14px; letter-spacing:-.005em; }
.prose h2:first-child{ margin-top:0; }
.prose h3{ font-size:1.05rem; margin:26px 0 10px; }
.prose p{ margin:0 0 14px; color:var(--ink); }
.prose p.muted{ color:var(--muted); font-size:.92rem; }
.prose ul, .prose ol{ margin:0 0 14px; padding-left:22px; }
.prose li{ margin-bottom:6px; }
.prose a{ color:var(--brass); text-decoration:underline; text-underline-offset:2px; }
.prose strong{ font-weight:700; }
.prose hr{ border:none; border-top:1px solid var(--line); margin:36px 0; }
.disclaimer{
  background:var(--brass-soft); border-radius:10px; padding:14px 18px; font-size:.86rem;
  color:var(--ink); margin:0 0 32px;
}
:root[data-theme="dark"] .disclaimer, @media (prefers-color-scheme:dark){ :root:not([data-theme="light"]) .disclaimer{ color:var(--ink); } }

.tbl-wrap{ overflow-x:auto; margin:0 0 18px; border:1px solid var(--line); border-radius:10px; }
table.tbl{ width:100%; border-collapse:collapse; font-size:.86rem; }
table.tbl thead th{
  text-align:left; padding:10px 14px; background:var(--surface-2); font-weight:700;
  border-bottom:1px solid var(--line);
}
table.tbl td{ padding:10px 14px; border-bottom:1px solid var(--line); vertical-align:top; }
table.tbl tbody tr:last-child td{ border-bottom:none; }
table.tbl .feat{ font-weight:600; white-space:nowrap; }

/* ---------- Footer (identisch zur Startseite) ---------- */
footer{ border-top:1px solid var(--line); padding:40px 0; }
.foot-row{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.foot-links{ display:flex; gap:22px; font-size:.84rem; }
.foot-links a{ color:var(--muted); text-decoration:none; }
.foot-links a:hover{ color:var(--ink); }
.foot-copy{ font-size:.8rem; color:var(--muted); }
