/* Dholera Progress Record. One ink, four values, one exception mark. */
@font-face{font-family:'Spectral';src:url(/fonts/spectral-600.woff2) format('woff2');
  font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Spectral';src:url(/fonts/spectral-400.woff2) format('woff2');
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Spectral';src:url(/fonts/spectral-400i.woff2) format('woff2');
  font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Schibsted Grotesk';src:url(/fonts/schibsted-grotesk-var.woff2) format('woff2');
  font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'Chivo Mono';src:url(/fonts/chivo-mono-var.woff2) format('woff2');
  font-weight:400 700;font-style:normal;font-display:swap}

:root{
  --field:#58713D; --sheet:#EFF2DE; --leaf:#EAEDD8; --band:#E7EAD2; --tot:#D7DDC4;
  --r1:#C5CEB1; --r2:#ABB896; --ink:#404625; --muted:#515642; --brass:#6C6F11;
  --pencil:#7E4B51; --fieldrule:#85986D;
  --disp:'Spectral',Georgia,serif;
  --body:'Schibsted Grotesk',system-ui,sans-serif;
  --mono:'Chivo Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background-color:var(--field);color:var(--ink);
  font-family:var(--body);font-size:16.5px;line-height:1.6;
  background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 24px),
                   repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 24px);
  overflow-x:hidden;
}
.mono,.num{font-family:var(--mono);font-variant-numeric:tabular-nums}
a{color:var(--brass);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--ink)}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:var(--sheet);padding:8px 12px;z-index:9}

/* ---- masthead: a bound register cover, not a website header ---- */
.mast{background:var(--field);border-top:2px solid var(--sheet);border-bottom:2px solid var(--sheet);
  padding:18px 20px}
.mast-in{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start;
  justify-content:space-between}
.mast-l{display:flex;gap:16px;align-items:flex-start;min-width:0;flex:1 1 260px}
.mast-l>div{min-width:0}
.staff{flex:0 0 auto;margin-top:4px}
.wordmark{margin:0;font-family:var(--disp);font-weight:600;font-size:25px;line-height:1.05;
  letter-spacing:.045em;text-transform:uppercase;color:var(--sheet);overflow-wrap:anywhere}
.wordmark .qual{font-weight:400;font-style:normal}
.wordmark a{color:var(--sheet);text-decoration:none}
.mast-sub{margin:9px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sheet);overflow-wrap:anywhere}
.plate{flex:0 0 auto;border:1px solid var(--sheet);padding:7px 12px;color:var(--sheet)}
.plate b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.12em;font-weight:400}
.plate span{display:block;font-family:var(--mono);font-size:15px;font-variant-numeric:tabular-nums;margin-top:3px}

/* ---- sheet rail: the section serials ---- */
.rail{background:var(--sheet);border-bottom:2px solid var(--ink)}
.rail ul{max-width:1280px;margin:0 auto;padding:0 20px;list-style:none;display:flex;gap:22px;
  overflow-x:auto;-webkit-overflow-scrolling:touch}
.rail li{flex:0 0 auto}
.rail a{display:block;padding:12px 0;font-size:13px;font-weight:600;letter-spacing:.07em;
  text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:2px solid transparent}
.rail a .s{font-family:var(--mono);color:var(--brass);margin-right:6px;font-weight:400}
.rail a:hover{border-bottom-color:var(--r2)}
.rail a[aria-current="page"]{border-bottom-color:var(--brass)}

/* ---- page frame with the marginalia rail ---- */
.wrap{max-width:1280px;margin:0 auto;padding:0 20px 8px;display:grid;grid-template-columns:1fr;gap:0}
.marg{display:none}
main{min-width:0;padding:26px 0 40px}
.plate-head{margin:0 0 26px}
.kick{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sheet);margin:0 0 8px}
h1{font-family:var(--disp);font-weight:600;font-size:31px;line-height:1.18;letter-spacing:.01em;
  color:var(--sheet);margin:0 0 12px}
.lede{color:var(--sheet);font-size:17px;max-width:62ch;margin:0}
.lede a{color:var(--sheet)}

/* ---- THE READING BLOCK: the signature element ---- */
.rb{margin:0 0 26px}
.rb-t{display:flex;align-items:baseline;gap:12px;padding:0 0 8px}
.rb-t h2,.rb-t h3{font-family:var(--disp);font-weight:600;font-size:15px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sheet);margin:0}
.rb-t .ser{font-family:var(--mono);font-size:12px;color:var(--sheet)}
.rb-sheet{background:var(--sheet);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);
  display:grid;grid-template-columns:38px minmax(0,1fr) 30px}
.rb-rail{border-right:1px solid var(--r1);padding:12px 6px;text-align:right}
.rb-rail .ser{font-family:var(--mono);font-weight:500;font-size:12px;color:var(--brass)}
.rb-ck{border-left:1px solid var(--r1);padding:12px 4px;text-align:center}
.rb-body{padding:14px 16px;min-width:0}
.rb-body>:first-child{margin-top:0}
.rb-body>:last-child{margin-bottom:0}
.rb-body p{max-width:70ch}
.rb-prov{margin:0;padding:7px 0 0;font-family:var(--mono);font-size:11px;line-height:1.55;
  color:var(--sheet);letter-spacing:.02em}
.rb-flush .rb-body{padding:0}
.rb-flush .rb-rail,.rb-flush .rb-ck{padding-top:14px}

/* ---- tables: this is the site, so it is specified to the pixel ---- */
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-right:1px solid var(--brass);
  position:relative}
table{border-collapse:collapse;width:100%;background:var(--sheet)}
caption{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);padding:10px 16px 8px}
thead th{background:var(--band);border-bottom:2px solid var(--ink);border-top:1px solid var(--r1);
  font-family:var(--body);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);text-align:left;padding:12px 12px;white-space:nowrap;vertical-align:bottom}
tbody td,tbody th{padding:11px 12px;font-size:15px;vertical-align:top;text-align:left;font-weight:400}
tbody th{font-weight:500}
tbody tr:nth-child(even) td,tbody tr:nth-child(even) th{background:var(--leaf)}
thead th:first-child,tbody th:first-child{position:sticky;left:0;z-index:1;
  border-right:1px solid var(--r1);background:var(--sheet)}
thead th:first-child{background:var(--band)}
tbody tr:nth-child(even) th:first-child{background:var(--leaf)}
tbody tr.tot th:first-child{background:var(--tot)}
td.n,th.n{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
td.u,th.u{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--muted);white-space:nowrap}
td.m,th.m{font-family:var(--mono);font-size:12.5px}
td.src,th.src{font-family:var(--mono);font-size:11.5px;color:var(--muted);line-height:1.5}
td.ck,th.ck{text-align:center;width:34px}
.grp{border-left:1px solid var(--r1)}
tbody tr.tot td,tbody tr.tot th{background:var(--tot);border-top:2px solid var(--ink);font-weight:600}
tbody tr:hover td,tbody tr:hover th{background:rgba(88,113,61,.08)}
tbody tr.tot:hover td,tbody tr.tot:hover th{background:var(--tot)}
.nodata{color:var(--muted);font-family:var(--mono);font-size:12.5px}
.tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;border:1px solid var(--r2);
  padding:2px 5px;white-space:nowrap;color:var(--muted)}
.tag-official{border-color:var(--brass);color:var(--brass)}
.tag-target{border-color:var(--pencil);color:var(--pencil)}
.neg{color:var(--pencil)}
.pos{color:var(--brass)}

/* ---- charts ---- */
figure{margin:0}
.chart{display:block;width:100%;height:auto;background:var(--sheet)}
.chart-narrow{display:block}
.chart-wide{display:none}
figcaption{font-family:var(--mono);font-size:11px;color:var(--muted);padding:8px 0 2px;line-height:1.55}
.plot{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:draw 900ms cubic-bezier(.2,.7,.3,1) forwards}
.node{opacity:0;animation:mark 1ms linear forwards;animation-delay:var(--d)}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes mark{to{opacity:1}}
@media (prefers-reduced-motion:reduce){
  .plot{animation:none;stroke-dashoffset:0}
  .node{animation:none;opacity:1}
}

/* ---- text blocks ---- */
h2,h3,h4{font-family:var(--disp);font-weight:600;color:var(--ink);line-height:1.25}
.rb-body h3{font-size:19px;margin:22px 0 8px;letter-spacing:0;text-transform:none}
.rb-body h4{font-size:16px;margin:18px 0 6px}
.rb-body ul,.rb-body ol{padding-left:20px;max-width:70ch}
.rb-body li{margin:0 0 7px}
.q{font-style:italic}
blockquote{margin:0 0 14px;padding:2px 0 2px 14px;border-left:2px solid var(--r2);
  font-family:var(--disp);font-style:italic;font-size:17px;max-width:64ch}
blockquote cite{display:block;font-family:var(--mono);font-style:normal;font-size:11px;
  color:var(--muted);margin-top:6px;letter-spacing:.04em}
.big{font-family:var(--mono);font-weight:500;font-size:34px;line-height:1.05;color:var(--ink);
  font-variant-numeric:tabular-nums}
.big .un{font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-left:6px}
.keyline{list-style:none;padding:0;margin:0;font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.keyline li{margin:0 0 5px}
.linkgrid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:0}
.linkgrid li{border-top:1px solid var(--r1)}
.linkgrid li:first-child{border-top:0}
.linkgrid a{display:block;padding:11px 2px;text-decoration:none;color:var(--ink)}
.linkgrid a:hover{background:rgba(88,113,61,.08)}
.linkgrid .lv{font-family:var(--mono);color:var(--brass);font-size:13px}

/* ---- footer ---- */
footer{background:var(--field);border-top:2px solid var(--sheet);color:var(--sheet);
  padding:26px 20px 40px;font-size:14.5px}
footer .in{max-width:1280px;margin:0 auto;display:grid;gap:22px}
footer h2{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--sheet);margin:0 0 9px;font-weight:400}
footer ul{list-style:none;margin:0;padding:0}
footer li{margin:0 0 6px}
footer a{color:var(--sheet);text-decoration-thickness:1px}
footer p{margin:0 0 8px;max-width:70ch}
footer .fine{font-family:var(--mono);font-size:11.5px;line-height:1.7}

@media (min-width:760px){
  body{font-size:17px}
  .mast{padding:24px 20px}
  .wordmark{font-size:30px;line-height:1;letter-spacing:.055em}
  .mast-sub{font-size:12px;letter-spacing:.11em}
  h1{font-size:38px}
  .rb-sheet{grid-template-columns:44px minmax(0,1fr) 36px}
  .rb-body{padding:18px 20px}
  .chart-narrow{display:none}
  .chart-wide{display:block}
  .linkgrid{grid-template-columns:1fr 1fr;gap:0 26px}
  footer .in{grid-template-columns:repeat(3,1fr)}
  footer .fine{grid-column:1/-1}
}
@media (min-width:1180px){
  .wrap{grid-template-columns:96px minmax(0,1fr)}
  .marg{display:block;border-right:1px solid var(--fieldrule);padding-top:30px}
  .marg span{writing-mode:vertical-rl;font-family:var(--mono);font-size:11px;letter-spacing:.22em;
    text-transform:uppercase;color:var(--sheet);display:block}
  main{padding-left:26px}
}
@media print{
  body{background:#EFF2DE;color:#404625}
  .rail,.plate{display:none}
}
