/* Resources: the printable checklist (/checklist/) and the glossary (/answers/glossary/).
   Linked only from those two pages. Uses the tokens defined in venue.css. */

.print-only{display:none}

/* ---------- Checklist ---------- */
.cl-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 clamp(28px,4vw,40px);padding:16px 18px;background:var(--paper-2);border:1px solid var(--rule)}
.cl-tools p{margin:0}
.nojs .cl-tools [data-print]{display:none}
.cl-intro{font-size:.98rem;color:var(--ink-2)}
.cl-more{font-size:.98rem;margin-top:14px}
.article-body .checks{list-style:none;padding:0;margin:0 0 1.2em;border-top:1px solid var(--ink)}
.article-body .checks li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:14px;padding:14px 0;margin:0;border-bottom:1px solid var(--rule)}
.checks input{width:20px;height:20px;margin:4px 0 0;accent-color:var(--brown);cursor:pointer}
.checks label{display:block;font:500 1rem/1.5 var(--f-ui);cursor:pointer}
.checks input:checked+div label,.opts-inline input:checked+*{color:var(--ink-2)}
.checks .why{margin:6px 0 0;font-size:.9rem;line-height:1.5;color:var(--ink-2)}
.checks .why a{overflow-wrap:anywhere}
.article-body .checks li.group{display:block;padding-left:34px}
.pro-set{border:0;margin:0;padding:0;min-width:0}
.pro-set legend{padding:0;margin:0 0 6px;font:500 1rem/1.5 var(--f-ui)}
.opts-inline{display:flex;flex-wrap:wrap;gap:4px 8px}
.opts-inline label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border:1px solid var(--rule);background:var(--paper-2);font:500 .95rem var(--f-ui);cursor:pointer}
.opts-inline label:hover{border-color:var(--ink)}
.opts-inline label:has(input:checked){border-color:var(--ink);background:#fff}
.opts-inline input{width:18px;height:18px;margin:0;accent-color:var(--brown)}
.article-body section h3{font-size:1.08rem;margin:22px 0 8px}
.cl-col>section{margin-bottom:clamp(36px,5vw,60px)}

/* ---------- Glossary ---------- */
.toc .az-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;margin:0 0 14px}
.toc .az-grid a,.toc .az-grid span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0;border:1px solid var(--rule);font:600 .85rem var(--f-ui);text-decoration:none}
.toc .az-grid a{color:var(--ink);border-color:var(--ink);background:var(--paper-2)}
.toc .az-grid a:hover{background:var(--ink);color:var(--paper)}
.toc .az-grid span{color:var(--taupe);opacity:.5}
.gloss-intro{font-size:1rem;color:var(--ink-2)}
.article-body .gloss{margin-bottom:28px}
.gloss .letter{font:600 1.5rem/1 var(--f-disp);color:var(--brown);margin:0 0 10px}
.gloss .rows dt .alt{display:block;margin-top:2px;font:500 .84rem/1.4 var(--f-ui);color:var(--ink-2)}
.gloss .rows>div{scroll-margin-top:100px}
.gloss .rows>div:target{background:var(--paper-2);box-shadow:-12px 0 0 var(--paper-2),12px 0 0 var(--paper-2)}
.gloss .rows dd p{margin:0 0 .6em}
.gloss .rows dd p:last-child{margin-bottom:0}
.gloss .see{font-size:.92rem;color:var(--ink-2)}
@media(max-width:900px){
  .toc .az-grid{flex-basis:100%;grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}
  .toc .az-grid a{text-decoration:none}
}

/* ---------- Print: the checklist on one A4 or Letter page ---------- */
@media print{
  @page{margin:11mm 12mm}
  .site-header,.site-footer,.sa-launch,.sa-panel,.sa-nudge,.toc,.skip,.cl-tools,#next,.next-step,.sources,.crumbs,.ref,.cl-more{display:none!important}
  .print-only{display:inline}
  html,body{background:#fff!important;color:#000}
  body.cl-page{font-size:8.4pt;line-height:1.3}
  .cl-page .wrap{max-width:none;padding:0}
  .cl-page .page-hero{padding:0 0 2.6mm;border-bottom:1.5pt double #000}
  .cl-page .page-hero h1{font-size:16pt;line-height:1.15;max-width:none;margin:0 0 1mm;color:#000}
  .cl-page .page-hero .lede{font-size:8.6pt;line-height:1.35;max-width:none;color:#222}
  .cl-page .fields{display:flex;align-items:flex-end;gap:2mm;margin:3.2mm 0 0;font:600 8pt var(--f-ui)}
  .cl-page .fields i{flex:1;border-bottom:.6pt solid #000;height:3.6mm}
  .cl-page .article{display:block;padding-top:3mm}
  .cl-page .article-body{max-width:none}
  .cl-page .cl-grid{columns:2;column-gap:7mm;column-rule:.4pt solid #ddd}
  .cl-page .cl-col>section{margin:0 0 3.2mm;break-inside:auto}
  .cl-page h2{font-size:10.5pt;line-height:1.2;margin:0 0 1.4mm;color:#000;break-after:avoid}
  .cl-page section h3{font-size:8.6pt;margin:2mm 0 1mm;break-after:avoid}
  .cl-page .cl-intro{break-after:avoid}
  .cl-page .cl-intro{font-size:7.6pt;line-height:1.3;margin:0 0 1.2mm;color:#222}
  .cl-page .checks{border-top:.8pt solid #000;margin:0 0 1.2mm}
  .cl-page .checks li{grid-template-columns:3.4mm minmax(0,1fr);gap:2mm;padding:1.3mm 0;border-bottom:.4pt solid #bbb;break-inside:avoid}
  .cl-page .checks li.group{padding-left:5.4mm}
  .cl-page .checks input,.cl-page .opts-inline input{width:3.2mm;height:3.2mm;margin:.3mm 0 0;accent-color:#000}
  .cl-page .checks label,.cl-page .pro-set legend{font:500 8.4pt/1.3 var(--f-ui);color:#000}
  .cl-page .checks .why{font-size:7.2pt;line-height:1.28;margin:.5mm 0 0;color:#333}
  .cl-page .opts-inline{gap:1mm 3.5mm}
  .cl-page .opts-inline label{min-height:0;padding:0;border:0;background:none;gap:1.2mm;font-size:8.4pt}
  .cl-page .checks input:checked+div label,.cl-page .opts-inline label{color:#000}
  .cl-page .reviewed{max-width:none;font-size:7pt;margin:2.4mm 0 0;padding-top:1.6mm;border-top:.4pt solid #bbb;color:#333}
}
