
  :root{
    --ink:#1a1d23; --dim:#5a6070; --line:#c9cdd6; --line-strong:#8a90a0;
    --panel:#f4f5f8; --accent:#0b5e57; --accent-ink:#083f3a;
    --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
    --serif:Georgia,"Times New Roman",serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{-webkit-text-size-adjust:100%}
  body{background:#fff;color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.6}
  .wrap{max-width:760px;margin:0 auto;padding:28px 22px 60px}
  header.sheet{border-bottom:3px double var(--ink);padding-bottom:14px;margin-bottom:22px}
  .kicker{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
  h1{font-size:clamp(24px,5vw,34px);line-height:1.15;letter-spacing:-.01em;margin-bottom:6px}
  .sub{color:var(--dim);font-size:14.5px}
  .sub strong{color:var(--ink)}
  h2{font-size:20px;line-height:1.2;margin:34px 0 6px;padding-top:10px;border-top:1px solid var(--line)}
  h2 .no{font-family:var(--mono);font-size:13px;color:var(--accent-ink);margin-right:8px}
  h3{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin:20px 0 6px}
  p{margin:10px 0}
  em{font-style:italic}
  .lead{font-size:15px}
  .note{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:12px 14px;font-size:14px;margin:14px 0}
  .note strong{font-weight:700}
  .src{font-family:var(--mono);font-size:11.5px;color:var(--dim);white-space:nowrap}
  ul,ol{margin:10px 0 14px;padding-left:1.35em}
  li{margin:7px 0}
  blockquote{border-left:3px solid var(--accent);padding:4px 0 4px 14px;margin:14px 0;font-style:italic}
  /* fill-in rows */
  table.fields{border-collapse:collapse;width:100%;margin:12px 0 18px;font-size:14.5px}
  table.fields th{visually-hidden}
  table.fields caption{text-align:left;font-family:var(--mono);font-size:12px;color:var(--dim);padding-bottom:6px}
  table.fields td{border:1px solid var(--line);padding:8px 10px;vertical-align:top}
  table.fields td.q{width:46%;font-weight:600;background:var(--panel)}
  table.fields td.a{width:54%}
  .w{display:block;width:100%;border:none;border-bottom:1.5px solid var(--line-strong);background:transparent;font:inherit;color:inherit;padding:4px 2px;min-height:1.7em}
  .w:focus{outline:2px solid var(--accent);outline-offset:2px;border-bottom-color:var(--accent)}
  .w.short{max-width:150px}
  /* checklist */
  table.checks{border-collapse:collapse;width:100%;margin:12px 0 18px;font-size:14px}
  table.checks caption{text-align:left;font-family:var(--mono);font-size:12px;color:var(--dim);padding-bottom:6px}
  table.checks th{border:1px solid var(--line);background:var(--panel);font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:7px 9px;color:var(--dim)}
  table.checks td{border:1px solid var(--line);padding:7px 9px;vertical-align:top}
  table.checks td.box{width:34px;text-align:center}
  .cbx{display:inline-block;width:15px;height:15px;border:1.7px solid var(--ink);border-radius:2px;vertical-align:middle}
  /* decision block */
  .decision{border:2.5px solid var(--ink);padding:18px 18px 14px;margin:16px 0;border-radius:4px}
  .decision h2{border:none;margin-top:0;padding-top:0}
  .choices{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0}
  .choices label,.choices .choice{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:16px}
  .sig{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}
  .sig .cell{flex:1 1 200px}
  .sig .lab{font-family:var(--mono);font-size:11.5px;color:var(--dim);display:block;margin-bottom:2px}
  .rule{border:none;border-top:1px solid var(--line);margin:30px 0 0}
/* W2 book-M1 bis (2026-10-09) — extracted from inline style="width:34px"
   on the evidence table's <th scope="col">Done</th>. */
.checks th.done-col{width:34px}
  footer{margin-top:34px;padding-top:12px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11.5px;color:var(--dim);line-height:1.7}
  @media (max-width:520px){
    table.fields td.q{width:100%;display:block}
    table.fields td.a{width:100%;display:block;border-top:none}
    table.checks{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  }
  @media print{
    body{font-size:11.5pt}
    .wrap{max-width:none;padding:0}
    h2{page-break-after:avoid}
    table,tr{page-break-inside:avoid}
    .note{background:#fff}
    a{color:inherit;text-decoration:none}
    .noprint{display:none}
    footer{font-size:9.5pt}
  }
