:root { --bg:#fafafa; --fg:#1d1d1f; --muted:#6b6b70; --line:#e2e2e6; --accent:#c4122f; --ok:#1a7f37; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#141416; --fg:#ececf0; --muted:#9a9aa2; --line:#2c2c31; --accent:#ff5a6e; --ok:#4cc26a; }
}
body { margin:0; background:var(--bg); color:var(--fg); font:15px/1.5 system-ui, sans-serif; }
main { max-width:960px; margin:0 auto; padding:24px 16px; }
a { color:inherit; }
h1 { font-size:22px; margin:0 0 4px; } h1 a { text-decoration:none; } h1 span { color:var(--accent); }
h2 { font-size:18px; margin:16px 0 8px; } h3 { font-size:15px; margin:20px 0 4px; }
.muted { color:var(--muted); font-size:13px; }
.aviso { color:var(--accent); } .ok { color:var(--ok); }
form { display:flex; gap:8px; flex-wrap:wrap; margin:12px 0; }
form.columna { flex-direction:column; align-items:flex-start; max-width:520px; }
form.columna label { display:flex; flex-direction:column; gap:4px; width:100%; }
input, select, textarea, button { font:inherit; padding:8px 10px; border:1px solid var(--line); border-radius:6px;
  background:transparent; color:inherit; }
input[type=search] { flex:1; min-width:200px; } textarea { min-height:90px; }
button { background:var(--accent); color:#fff; border:0; cursor:pointer; }
.oculto { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.tabla { overflow-x:auto; }
table { width:100%; border-collapse:collapse; font-size:14px; }
th, td { text-align:left; padding:6px 8px; border-bottom:1px solid var(--line); vertical-align:top; }
th { color:var(--muted); font-weight:500; }
td.ns { color:var(--muted); font-size:12px; word-break:break-all; } td.fecha { white-space:nowrap; }
s { color:var(--muted); }
.paginas { display:flex; justify-content:space-between; align-items:center; margin-top:12px; gap:8px; }
footer { margin-top:32px; padding-top:12px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
footer p { margin:4px 0; }
