
@page { size: Letter; margin: 0.7in 0.75in 0.8in;
  @bottom-left { content: "Council Coverage \2022  Confidential to the writer"; font: 8pt 'Helvetica Neue', Arial, sans-serif; color: #8a8478; }
  @bottom-right { content: counter(page) " / " counter(pages); font: 8pt 'Helvetica Neue', Arial, sans-serif; color: #8a8478; } }
:root { --ink:#1d1b18; --muted:#6b655c; --line:#e3ddd2; --paper:#fffdf8; --accent:#9c2f1f; --gold:#b8862b;
  --pass:#8a3324; --consider:#a8761a; --recommend:#2f6b3b; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font: 10.5pt/1.55 Georgia, 'Iowan Old Style', 'Times New Roman', serif; }
.wrap { max-width: 7.2in; margin: 0 auto; padding: 0.4in 0.2in 0.6in; }
.kicker { font: 600 8pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--accent); }
h1 { font-size: 26pt; line-height: 1.1; margin: .15em 0 .1em; letter-spacing: -.01em; }
.meta { font: 9pt 'Helvetica Neue', Arial, sans-serif; color: var(--muted); }
.meta b { color: var(--ink); font-weight: 600; }
h2 { font: 700 9pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: var(--accent);
  border-top: 2px solid var(--ink); padding-top: .55em; margin: 2em 0 .8em; }
.logline { font-size: 13.5pt; line-height: 1.45; font-style: italic; margin: 1.2em 0 .6em; }
.bottomline { display: flex; gap: 18px; align-items: center; background: #f4efe4; border-left: 4px solid var(--accent); padding: 12px 16px; margin: 1.2em 0; }
.big { white-space: nowrap; font: 700 30pt 'Helvetica Neue', Arial, sans-serif; color: var(--accent); line-height: 1; }
.big small { font-size: 11pt; color: var(--muted); font-weight: 500; }
.verdicts { display: flex; gap: 10px; flex-wrap: wrap; margin: .6em 0 0; }
.v { flex: 1 1 45%; border: 1px solid var(--line); padding: 10px 12px; background: #fff; }
.v .lab { font: 600 8pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.badge { display: inline-block; font: 700 9pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .12em; padding: 3px 9px; color: #fff; margin: 4px 0; }
.PASS { background: var(--pass); } .CONSIDER { background: var(--consider); } .RECOMMEND { background: var(--recommend); }
table.scores { width: 100%; border-collapse: collapse; }
table.scores td { padding: 7px 6px; border-bottom: 1px solid var(--line); vertical-align: top; }
td.dim { width: 30%; font-weight: 600; }
td.num { width: 9%; font: 700 13pt 'Helvetica Neue', Arial, sans-serif; text-align: right; color: var(--accent); }
.bar { height: 5px; background: var(--line); margin-top: 5px; } .bar i { display: block; height: 5px; background: var(--gold); }
.w0{width:0}.w1{width:10%}.w2{width:20%}.w3{width:30%}.w4{width:40%}.w5{width:50%}.w6{width:60%}.w7{width:70%}.w8{width:80%}.w9{width:90%}.w10{width:100%}
.spread { font: 8pt 'Helvetica Neue', Arial, sans-serif; color: var(--muted); }
.card { border: 1px solid var(--line); background: #fff; padding: 11px 14px; margin: 0 0 10px; page-break-inside: avoid; }
.card h3 { margin: 0 0 .3em; font-size: 11.5pt; }
.rank { font: 700 10pt 'Helvetica Neue', Arial, sans-serif; color: #fff; background: var(--ink); display: inline-block; width: 22px; text-align: center; margin-right: 6px; }
.impact { font: 600 7.5pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin-left: 6px; }
blockquote { margin: .4em 0 .5em; padding: 2px 0 2px 12px; border-left: 3px solid var(--gold); font-style: italic; color: #3b372f; }
.ok { font: 7.5pt 'Helvetica Neue', Arial, sans-serif; color: var(--recommend); font-style: normal; margin-left: 4px; }
.lbl { font: 600 8pt 'Helvetica Neue', Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
ul { padding-left: 1.2em; } li { margin: .25em 0; }
.pro { border: 2px solid var(--gold); background: #fffaf0; padding: 12px 16px; }
.method { font: 8.5pt/1.5 'Helvetica Neue', Arial, sans-serif; color: var(--muted); }
.cols { display: flex; gap: 16px; } .cols > div { flex: 1; }
@media print { .wrap { padding: 0; max-width: none; } }
@media screen and (max-width: 640px) { .cols, .bottomline { display: block; } h1 { font-size: 21pt; } }
