:root { --ink:#000; --bg:#fff; --hot:#d00; --muted:#666; --link:#000; --rule:#000; }
@media (prefers-color-scheme: dark) {
  :root { --ink:#eee; --bg:#111; --hot:#ff4d4d; --muted:#999; --link:#eee; --rule:#555; }
}
* { box-sizing: border-box; }
body { margin:0 auto; max-width:1180px; padding:12px 16px 40px; background:var(--bg); color:var(--ink);
  font: 700 17px/1.3 "Courier New", Courier, monospace; }
a { color:var(--link); text-decoration:underline; }
a:visited { color:var(--muted); }
a.hot, a.hot:visited { color:var(--hot); }
header { text-align:center; }
ul { list-style:none; margin:0; padding:0; }
ul.top { max-width:760px; margin:10px auto 18px; text-align:left; }
ul.top li { margin:8px 0; font-size:19px; }
.lead img { display:block; max-width:min(100%, 620px); max-height:420px; margin:6px auto 10px; object-fit:cover; }
.lead h1 { font: 700 clamp(28px, 5vw, 50px)/1.08 "Arial Black", Arial, Helvetica, sans-serif; text-transform:uppercase;
  margin:6px auto 18px; max-width:980px; }
.lead h1 a { text-decoration:underline; }
.masthead { font: 900 clamp(34px, 7vw, 76px)/1 "Times New Roman", Times, serif; letter-spacing:-1px; text-decoration:underline; margin-top:8px; }
.tagline { font-size:13px; color:var(--muted); margin:6px 0 4px; }
hr { border:0; border-top:3px solid var(--rule); margin:12px 0; }
.cols { display:grid; grid-template-columns:repeat(3, 1fr); gap:0 28px; }
.col { min-width:0; }
.col section + section, .col .ad + section { margin-top:18px; }
.col h2 { font: 900 15px/1.2 Arial, Helvetica, sans-serif; text-transform:uppercase; letter-spacing:1px;
  border-bottom:2px solid var(--rule); padding-bottom:3px; margin:0 0 6px; }
.col li { padding:5px 0; border-bottom:1px dotted var(--rule); overflow-wrap:anywhere; }
.col li:last-child { border-bottom:0; }
.src { font:400 11px Arial, sans-serif; color:var(--muted); white-space:nowrap; }
.ad { margin:14px auto; text-align:center; min-height:90px; }
.ad-placeholder { display:flex; align-items:center; justify-content:center; border:1px dashed var(--muted);
  color:var(--muted); font:400 11px Arial, sans-serif; letter-spacing:2px; }
footer { text-align:center; font:400 12px Arial, sans-serif; color:var(--muted); }
@media (max-width: 820px) { .cols { grid-template-columns:1fr; } body { font-size:16px; } }
