:root { --fg:#1d2733; --muted:#5f6b7a; --line:#dde3ea; --bg:#f6f8fa; --accent:#0b5cad; --ok:#1a7f37; --warn:#9a6700; --bad:#cf222e; }
* { box-sizing: border-box; }
body { margin:0; font:15px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color:var(--fg); background:var(--bg); }
a { color:var(--accent); text-decoration:none; } a:hover { text-decoration:underline; }
.topbar { display:flex; align-items:center; gap:1.5rem; padding:.6rem 1.2rem; background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:1; flex-wrap:wrap; }
.brand { font-weight:600; color:var(--fg); } .env { font-size:.7rem; background:#fff3cd; color:var(--warn); padding:.1rem .35rem; border-radius:4px; }
nav { display:flex; gap:1rem; flex-wrap:wrap; } nav a.active { font-weight:600; text-decoration:underline; }
.user { margin-left:auto; color:var(--muted); font-size:.9rem; }
main { max-width:1150px; margin:1.2rem auto; padding:0 1.2rem; }
.footer { text-align:center; color:var(--muted); font-size:.8rem; padding:2rem 0; }
.card { background:#fff; border:1px solid var(--line); border-radius:8px; padding:1rem 1.2rem; margin-bottom:1rem; }
h1 { font-size:1.4rem; margin:.2rem 0 .8rem; } h2 { font-size:1.15rem; } h3 { font-size:1rem; }
.muted { color:var(--muted); } .small { font-size:.85rem; }
form.inline { display:flex; gap:.5rem; flex-wrap:wrap; margin-bottom:1rem; }
input, select, button { font:inherit; padding:.45rem .6rem; border:1px solid var(--line); border-radius:6px; background:#fff; }
input[type=search] { flex:1; min-width:16rem; }
button { cursor:pointer; background:var(--accent); color:#fff; border-color:var(--accent); } button.secondary { background:#fff; color:var(--fg); border-color:var(--line); }
table { border-collapse:collapse; width:100%; font-size:.9rem; } th, td { text-align:left; padding:.35rem .5rem; border-bottom:1px solid var(--line); vertical-align:top; }
th { background:#f0f3f6; font-weight:600; }
.badge { display:inline-block; font-size:.72rem; padding:.05rem .4rem; border-radius:10px; border:1px solid var(--line); background:#f0f3f6; white-space:nowrap; }
.b-VERIFIZIERT, .b-consolidated, .b-BEANTWORTET { background:#dafbe1; border-color:#aceebb; color:var(--ok); }
.b-PLAUSIBEL, .b-validated, .b-TEILWEISE_BEANTWORTET { background:#fff8c5; border-color:#f2e089; color:var(--warn); }
.b-WIDERSPRUECHLICH, .b-received, .b-OFFEN { background:#ffebe9; border-color:#ffcecb; color:var(--bad); }
.b-archived, .b-removed_in_source { background:#eee; color:#666; }
.result { padding:.6rem 0; border-bottom:1px solid var(--line); } .result:last-child { border-bottom:0; }
.snippet { color:var(--muted); font-size:.9rem; }
.grid { display:grid; grid-template-columns: 2fr 1fr; gap:1rem; } @media (max-width: 900px) { .grid { grid-template-columns: 1fr; } }
dl.meta { display:grid; grid-template-columns: max-content 1fr; gap:.2rem .8rem; font-size:.9rem; margin:0; } dl.meta dt { color:var(--muted); }
.md pre, pre.raw { background:#f6f8fa; border:1px solid var(--line); border-radius:6px; padding:.6rem; overflow:auto; font-size:.85rem; }
.md code { background:#f0f3f6; padding:.05rem .25rem; border-radius:4px; font-size:.88em; }
.md table { margin:.6rem 0; } .md blockquote { border-left:3px solid var(--line); margin:.5rem 0; padding:.1rem .8rem; color:var(--muted); }
.unresolved { color:var(--muted); font-style:italic; }
.tabs { display:flex; gap:.4rem; margin-bottom:.6rem; } .tabs button { background:#fff; color:var(--fg); border-color:var(--line); } .tabs button.on { background:var(--accent); color:#fff; }
.error { color:var(--bad); } .pager { display:flex; gap:.6rem; align-items:center; margin-top:.8rem; }
.center { text-align:center; padding:3rem 1rem; }
