/* Prüfklar – Gestaltung: Farben Tintenblau #12355b, Prüfgrün #1e8e5a, Fehlerrot #b42318, Warngelb #a15c07.
   Schrift: Systemschrift (keine fremden Schriftserver). */
:root{--fg:#1a2433;--muted:#5b6775;--brand:#12355b;--ok:#1e8e5a;--err:#b42318;--warn:#a15c07;--info:#4f7cac;--bg:#fff;--soft:#f4f7fa;--line:#dfe5ec}
*{box-sizing:border-box}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--fg);background:var(--bg)}
main,.wrap{max-width:860px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:10px}
header.top img{height:36px;display:block}
header.top nav a{color:var(--muted);text-decoration:none;margin-left:18px;font-size:.95rem}
h1{font-size:2rem;line-height:1.25;margin:1.1em 0 .4em;color:var(--brand)}
h2{font-size:1.35rem;margin:1.9em 0 .5em;color:var(--brand)}
h3{font-size:1.05rem;margin:1.4em 0 .3em}
a{color:var(--brand)}
.lead{font-size:1.15rem;color:var(--muted)}
.box{border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin:20px 0;background:var(--soft)}
.btn{display:inline-block;background:var(--ok);color:#fff;text-decoration:none;padding:10px 18px;border-radius:7px;font-weight:600;border:0;font-size:1rem;cursor:pointer}
.btn.alt{background:var(--brand)}
.btn:disabled{opacity:.5;cursor:default}
ul{padding-left:1.2em}
small,.small{font-size:.88rem;color:var(--muted)}
footer{border-top:1px solid var(--line);margin-top:56px;padding:16px 0 40px;font-size:.9rem;color:var(--muted)}
footer a{color:var(--muted);margin-right:16px}
/* Prüfer */
.drop{border:2px dashed var(--info);border-radius:12px;padding:30px 20px;text-align:center;background:var(--soft);cursor:pointer}
.drop.over{background:#e8f0f8}
.drop input{display:none}
.status{margin:16px 0;font-weight:600}
.verdict{border-radius:10px;padding:14px 18px;margin:18px 0;font-weight:600}
.verdict.ok{background:#e7f6ee;color:var(--ok);border:1px solid #b9e3cb}
.verdict.err{background:#fdecea;color:var(--err);border:1px solid #f5c2bd}
.verdict.warn{background:#fff6e5;color:var(--warn);border:1px solid #f3d9a4}
.msg{border:1px solid var(--line);border-left:5px solid var(--err);border-radius:8px;padding:12px 16px;margin:12px 0;background:#fff}
.msg.warnung{border-left-color:var(--warn)}
.msg.hinweis{border-left-color:var(--info)}
.msg .code{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;background:var(--soft);padding:1px 6px;border-radius:4px;margin-right:8px}
.msg .lvl{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.msg h4{margin:.3em 0;font-size:1.02rem}
.msg p{margin:.35em 0}
.msg details{margin-top:6px;font-size:.92rem}
.msg code,.path{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;word-break:break-all}
.price{font-size:1.5rem;font-weight:700;color:var(--brand)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{border:1px solid var(--line);border-radius:10px;padding:16px 18px}
.card h3{margin-top:0}
