:root{--bg:#fff;--fg:#1b1b1b;--muted:#555;--line:#ccc;--accent:#0b5cad;--err:#a40000;--card:#f6f8fa}
@media (prefers-color-scheme:dark){:root{--bg:#14171a;--fg:#eee;--muted:#aaa;--line:#444;--accent:#6db3ff;--err:#ff8a8a;--card:#1d2226}}
body{margin:0;background:var(--bg);color:var(--fg);font:20px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}
main{max-width:46rem;margin:0 auto;padding:1rem 16px 3rem}
h1{font-size:1.7rem}
a{color:var(--accent)}
.muted{color:var(--muted)}
.err{color:var(--err);font-weight:600}
.q{border:1px solid var(--line);border-radius:8px;margin:1rem 0;padding:1rem;background:var(--card)}
.qt{font-weight:600;margin:0 0 .75rem}
input:not([type=radio]):not([type=checkbox]){font:inherit;padding:.5rem;width:100%;max-width:20rem;box-sizing:border-box;border:2px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}
label{display:block;margin:.4rem 0}
.opt,.struggle{padding:.25rem 0}
.struggle{margin-top:.8rem;color:var(--muted);font-size:.95rem}
input[type=radio],input[type=checkbox]{width:1.2em;height:1.2em;vertical-align:middle}
button,.btn{font:inherit;background:var(--accent);color:#fff;border:0;border-radius:6px;padding:.6rem 1.4rem;cursor:pointer;text-decoration:none;display:inline-block}
:focus-visible{outline:3px solid #f90;outline-offset:2px}
table{border-collapse:collapse;width:100%;font-size:.9rem;display:block;overflow-x:auto}
th,td{border-bottom:1px solid var(--line);padding:.4rem .6rem;text-align:left;white-space:nowrap}
.lv{font-weight:700}.Secure{color:#1a7f37}.Review{color:#b36b00}.Needs{color:var(--err)}
nav{margin-bottom:1rem;font-size:.9rem}
form.inline{display:inline}
.note{margin-top:.8rem;color:var(--muted);font-size:.95rem}
textarea{font:inherit;width:100%;box-sizing:border-box;padding:.5rem;border:2px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);margin-top:.3rem}
