:root{color-scheme:light dark}
*{box-sizing:border-box}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans;margin:0;line-height:1.45}
.wrap{max-width:1100px;margin:auto;padding:24px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
a.btn{display:inline-block;text-decoration:none;padding:8px 12px;border:1px solid #bbb;border-radius:10px}
button{padding:10px 14px;border-radius:12px;border:1px solid #bbb;background:#4f46e5;color:#fff;cursor:pointer}
button:hover{filter:brightness(1.05)}
.card{border:1px solid #ccc;border-radius:12px;padding:16px}
.small{max-width:520px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width:800px){.grid-2,.grid-3{grid-template-columns:1fr}}
label{display:grid;gap:6px;margin:6px 0}
input,select,textarea{font:inherit;padding:10px;border-radius:10px;border:1px solid #bbb}
hr{border:none;border-top:1px solid #ddd;margin:14px 0}
table{border-collapse:collapse;width:100%}
th,td{border:1px solid #ccc;padding:6px 8px;text-align:left;vertical-align:top}
th{background:#eee;position:sticky;top:0}
.score{font-weight:700;margin-left:10px}
.pill{border:1px solid #bbb;padding:2px 8px;border-radius:999px;display:inline-block}
.ok{color:#1f8b24}.bad{color:#c026d3}
.alert{padding:8px 10px;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px}
.kv{display:grid;grid-template-columns:220px 1fr;gap:8px}
pre{white-space:pre-wrap;background:#f6f6f6;border:1px solid #ddd;border-radius:8px;padding:10px}
.actions{display:flex;gap:8px;align-items:center;margin-top:10px}
