:root { --fg:#14171a; --muted:#5b6570; --line:#e3e6e8; --accent:#0b6b4f; --bg:#fbfbfa; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
header { background:#fff; border-bottom:1px solid var(--line); padding:.9rem 1.25rem; display:flex; gap:1.5rem; align-items:baseline; flex-wrap:wrap; }
header h1 { font-size:1.1rem; margin:0; }
nav a { margin-right:1rem; color:var(--accent); text-decoration:none; }
main { max-width:70rem; margin:0 auto; padding:1.5rem 1.25rem 3rem; }
h2 { font-size:1.15rem; margin:2rem 0 .8rem; }
form { background:#fff; border:1px solid var(--line); border-radius:10px; padding:1rem; margin:1rem 0; display:grid; gap:.4rem; max-width:36rem; }
form.inline { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; max-width:none; padding:.6rem .8rem; }
form label { font-size:.85rem; color:var(--muted); }
input, select { padding:.5rem .6rem; border:1px solid var(--line); border-radius:8px; font:inherit; }
button { font:inherit; padding:.5rem .8rem; border-radius:8px; border:1px solid var(--line); background:#fff; cursor:pointer; }
button.primary { background:var(--accent); color:#fff; border-color:var(--accent); font-weight:600; }
button.link { border:0; background:none; color:#b32d2e; text-decoration:underline; }
a.button { display:inline-block; padding:.45rem .7rem; border:1px solid var(--line); border-radius:8px; text-decoration:none; color:var(--fg); background:#fff; font-size:.9rem; }
table { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line); border-radius:10px; overflow:hidden; font-size:.92rem; }
th, td { text-align:left; padding:.5rem .65rem; border-bottom:1px solid var(--line); vertical-align:top; }
th { background:#f6f7f7; }
code { background:#f6f7f7; padding:.1rem .3rem; white-space:normal; word-break:break-word; display:inline-block; }
td.actions form { display:inline-block; background:none; border:0; padding:0; margin:0 0 .3rem; }
td.actions form button { padding:.3rem .5rem; }
.pill { display:inline-block; font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; padding:.05rem .4rem; border-radius:999px; border:1px solid var(--line); margin-right:.3rem; }
.pill.error { background:#fcf0f1; color:#8a1f1f; border-color:#e6b8b8; }
.pill.warning { background:#fdf6e3; color:#7a5a00; border-color:#e6d3a3; }
.pill.ok { background:#eef7f2; color:#0b6b4f; border-color:#bfe0d0; }
.hint { color:var(--muted); font-size:.85rem; }
.scope { margin-top:2rem; border-top:1px solid var(--line); padding-top:1rem; }
.notice { background:#eef7f2; border:1px solid #bfe0d0; border-radius:8px; padding:.6rem .8rem; }
.error { color:#8a1f1f; }
pre { background:#fff; border:1px solid var(--line); border-radius:8px; padding:.7rem; overflow:auto; }
footer { max-width:70rem; margin:0 auto; padding:0 1.25rem 3rem; color:var(--muted); font-size:.85rem; }

/* What changed since the last scan */
.changes { background:#fff; border:1px solid var(--line); border-left:4px solid var(--accent); border-radius:8px; padding:.9rem 1.1rem; margin:1rem 0 1.5rem; }
.changes h3 { margin:0 0 .4rem; font-size:1rem; }
.changes ul { margin:.3rem 0 .8rem 1.1rem; padding:0; }

/* Trend chart */
.trend { background:#fff; border:1px solid var(--line); border-radius:10px; padding:.9rem 1.1rem; margin:1rem 0 1.5rem; }
.trend h3 { margin:0 0 .3rem; font-size:1rem; }
.trend svg { display:block; }

/* Per-row editing */
td.actions details { display:inline-block; margin:0 0 .3rem; }
td.actions details form { display:block; margin-top:.4rem; }
td.actions summary { cursor:pointer; }
.pageschecked { margin-top:.4rem; }
.pageschecked ul { margin:.3rem 0 0 1.1rem; }

/* Text for screen readers only: used to announce links that open a new tab. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* Demonstration banner */
.demo-banner { background:#fff8e5; border-bottom:1px solid #e6d3a3; padding:.7rem 1.25rem; color:#5a4600; font-size:.95rem; }
.demo-banner .hint { display:block; color:#7a5a00; }
