
:root{
  --ink:#16191d; --ink-2:#3d444d; --ink-3:#6b7480;
  --rule:#d8d2c6; --rule-2:#ebe6dc; --paper:#faf8f4; --card:#fff;
  --seal:#1f4e46; --seal-soft:#eef3f1; --flag:#8a2f20; --flag-soft:#fbf0ee;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
a{color:var(--seal);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--flag)}

header.mast{border-bottom:2px solid var(--ink);background:var(--card)}
.mast .wrap{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;padding-top:20px;padding-bottom:18px}
.brand{font-family:var(--serif);font-size:25px;font-weight:600;letter-spacing:-.01em;
  color:var(--ink);text-decoration:none}
.tagline{color:var(--ink-3);font-size:14.5px;max-width:640px}
nav.top{margin-left:auto;display:flex;gap:20px;font-size:14px}
nav.top a{color:var(--ink-2);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
nav.top a:hover{border-bottom-color:var(--flag);color:var(--flag)}

.banner{border-left:4px solid;padding:15px 18px;margin:22px 0;font-size:15.5px;line-height:1.6}
.banner.critical{border-color:var(--flag);background:var(--flag-soft);color:#5d2016}
.banner.notice{border-color:var(--rule);background:var(--card);color:var(--ink-2)}
.banner strong{color:inherit}

h1{font-family:var(--serif);font-size:36px;line-height:1.2;letter-spacing:-.02em;margin:34px 0 10px}
h2{font-family:var(--serif);font-size:25px;margin:38px 0 10px;padding-bottom:7px;border-bottom:1px solid var(--rule)}
h3{font-size:18px;margin:26px 0 8px}
.lede{font-size:19px;color:var(--ink-2);max-width:70ch}

.kicker{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}

.meta-row{display:flex;gap:26px;flex-wrap:wrap;font-family:var(--mono);font-size:12px;
  color:var(--ink-3);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  padding:11px 0;margin:18px 0 30px}
.meta-row b{color:var(--ink);font-weight:600}

.tw{overflow-x:auto;margin:18px 0}
table{border-collapse:collapse;width:100%;font-size:15px;background:var(--card)}
th,td{text-align:left;padding:10px 13px;border-bottom:1px solid var(--rule-2);vertical-align:top}
thead th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-3);border-bottom:1.5px solid var(--rule);background:var(--paper)}
tbody tr:hover{background:var(--seal-soft)}

.card{background:var(--card);border:1px solid var(--rule);margin:16px 0}
.card-h{padding:16px 18px 0}
.card-h h3{margin:0 0 3px;font-size:19px}
.card-h h3 a{text-decoration:none;color:var(--ink)}
.card-h h3 a:hover{color:var(--seal)}
.card-sub{color:var(--ink-3);font-size:13.5px}
.card-b{padding:11px 18px 17px;font-size:15.5px;color:var(--ink-2)}

/* 1c verification strip — the element the design verdict specifically chose */
.vstrip{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--rule-2);
  border-bottom:1px solid var(--rule-2);background:var(--paper);
  font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase}
.vstrip div{padding:8px 14px;border-right:1px solid var(--rule-2);color:var(--ink-3)}
.vstrip div:last-child{border-right:0}
.vstrip b{color:var(--ink);font-weight:600;letter-spacing:.03em}
.vstrip .dot{color:var(--seal)}
.lgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0;
  border-top:1px solid var(--rule-2)}
.lgrid div{padding:11px 18px;border-right:1px solid var(--rule-2);font-size:14px}
.lgrid div:last-child{border-right:0}
.lgrid .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--ink-3);display:block;margin-bottom:2px}

.pill{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;padding:3px 8px;border:1px solid var(--rule);color:var(--ink-3);
  background:var(--paper);margin-right:6px}
.pill.ok{color:var(--seal);border-color:var(--seal);background:var(--seal-soft)}

.cat{margin:40px 0 8px}
.cat .blurb{color:var(--ink-2);max-width:72ch;margin:6px 0 4px}
.lookup{font-size:14px;color:var(--ink-3);background:var(--card);border:1px solid var(--rule-2);
  padding:12px 15px;margin:10px 0 4px}
.lookup .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3)}

.guide{max-width:none}
.guide>p,.guide>ul,.guide>ol,.guide>h2,.guide>h3,.guide>h4,.guide>blockquote,.guide>div.banner{max-width:74ch}
.guide .tw{max-width:none}
.guide td:first-child{white-space:nowrap}
.guide td a{white-space:nowrap}
.guide td:nth-child(4){white-space:nowrap}
.guide p,.guide li{color:var(--ink-2)}
.guide h2{margin-top:42px}
.guide blockquote{margin:20px 0;padding:14px 18px;border-left:4px solid var(--rule);
  background:var(--card);color:var(--ink-2);font-size:15.5px}

footer{border-top:2px solid var(--ink);margin-top:70px;background:var(--card)}
footer .wrap{padding:26px 24px 46px;font-size:14px;color:var(--ink-3)}
footer a{color:var(--ink-2)}
footer .cols{display:flex;gap:46px;flex-wrap:wrap;margin-bottom:18px}
.stamp{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3);
  border-top:1px solid var(--rule-2);padding-top:14px;margin-top:14px}
@media(max-width:640px){
  body{font-size:16px} h1{font-size:28px} .mast .wrap{padding-bottom:14px}
  nav.top{margin-left:0;width:100%;gap:16px}
}
