/* Report-register styles for the early rooms and their charts (owner: the report designer).
   Charts drawn by early.js: `lines` (dated series with a projection), `dist` (forecast
   distributions), `bars` (horizontal bars), and Room 14's imprint. */

/* ---------- line charts ---------- */
.fig-lines svg, .fig-dist svg { max-width: 600px; }
.fig-lines .fig-t, .fig-dist .fig-t { font-size: 7.5px; }
.fig .fig-s0 { stroke: var(--accent); stroke-width: 2.2; opacity: 1; }
.fig .fig-s1 { stroke: var(--ink); stroke-width: 1.3; opacity: 0.9; }
.fig .fig-s2 { stroke: var(--ink); stroke-width: 1.1; stroke-dasharray: 6 2 1.5 2; opacity: 0.75; }
.fig .fig-s3 { stroke: var(--mute); stroke-width: 1.3; stroke-dasharray: 1.6 2.4; opacity: 1; }
.fig .fig-pj { stroke-dasharray: 4 3.2; opacity: 0.8; }
.fig .fig-s0.fig-pj { stroke-width: 1.8; }
.fig-now { fill: none; stroke: var(--mute); stroke-width: 0.8; stroke-dasharray: 1 2.5; }
.fig-nowt { fill: var(--mute); }
.fig-tag { font-weight: 700; }
.fig-tag0 { fill: var(--accent); }
.fig-tag1, .fig-tag2 { fill: var(--ink); }
.fig-tag3 { fill: var(--mute); }

.fig-key { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 10px 0 0; font: 10.5px/16px var(--mono); color: #333; }
.fig-kk { display: inline-flex; align-items: center; gap: 6px; }
.fig-sw { display: inline-block; width: 18px; height: 0; border-top: 2px solid var(--accent); }
.fig-sw.fig-s1 { border-top: 1.5px solid var(--ink); }
.fig-sw.fig-s2 { border-top: 1.5px dashed var(--ink); opacity: 0.75; }
.fig-sw.fig-s3 { border-top: 1.5px dotted var(--mute); }
.fig-sw.fig-pj { border-top: 1.5px dashed var(--accent); opacity: 0.8; }
.fig-src { margin: 6px 0 0; font: 10.5px/15px var(--mono); color: var(--mute); }
.fig-src sup.fn { font-size: 9px; }

/* ---------- forecast distributions ---------- */
.fig-area { stroke: none; }
.fig-a0 { fill: rgba(180, 18, 27, 0.1); }
.fig-a1 { fill: rgba(17, 17, 17, 0.06); }
.fig-a2 { fill: rgba(17, 17, 17, 0.035); }
.fig-med { fill: none; stroke-width: 0.8; stroke-dasharray: 2 2; }
.fig-m0 { stroke: var(--accent); }
.fig-m1, .fig-m2 { stroke: var(--ink); opacity: 0.6; }
.fig-dist .rt-dt { margin: 14px 0 0; }
.rt-dt table { font-size: 15px; line-height: 20px; }
.rt-dt tbody th { width: 50%; }

/* ---------- horizontal bars ---------- */
.rb { margin: 32px 0 34px; }
.rb figcaption { margin: 0 0 10px; font-size: 16px; line-height: 22px; color: #222; }
.rb-l0 { margin: 0; padding: 0; list-style: none; }
.rb-r { display: grid; grid-template-columns: minmax(7.5em, 34%) minmax(0, 1fr) 5.2em; align-items: center; column-gap: 12px; padding: 4px 0; border-bottom: 1px solid rgba(17, 17, 17, 0.08); }
.rb-r:last-child { border-bottom: 0; }
.rb-l { font-size: 16px; line-height: 21px; }
.rb-t { position: relative; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.rb-b { display: block; width: var(--w); height: 13px; background: var(--accent); }
.rb-two .rb-b { height: 7px; }
.rb-a { background: rgba(17, 17, 17, 0.32); }
.rb-z { background: var(--accent); }
.rb-v { font: 12px/18px var(--mono); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.rb-two .rb-r { grid-template-columns: minmax(7.5em, 34%) minmax(0, 1fr) 6.6em; }
.rb-k { display: flex; align-items: center; gap: 6px; margin: 0 0 8px; font: 10.5px/16px var(--mono); color: #333; }
.rb-sw { display: inline-block; width: 14px; height: 7px; margin-left: 10px; }
.rb-sw:first-child { margin-left: 0; }

/* ---------- tables ---------- */
.rt-tl tbody th { width: 7.6em; font: 12.5px/22px var(--mono); color: var(--mute); white-space: nowrap; }

/* ---------- Room 14: the imprint at the foot of the verso ---------- */
.r14-imp { max-width: 560px; margin: 0 auto; padding: 18px 0 0; border-top: 1px solid rgba(17, 17, 17, 0.25); font-size: 14px; line-height: 20px; color: #333; }
.r14-ih { margin: 0; font-size: 17px; line-height: 22px; font-style: italic; color: var(--ink); }
.r14-ih2 { margin: 0 0 14px; font-size: 14px; line-height: 20px; color: var(--mute); }
.r14-dl { display: grid; gap: 9px; margin: 0; }
.r14-dl > div { display: grid; grid-template-columns: 7.5em minmax(0, 1fr); column-gap: 14px; }
.r14-dl dt { font: 9.5px/20px var(--mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--mute); }
.r14-dl dd { margin: 0; }
.r14-cite { margin: 16px 0 0; font-size: 13px; line-height: 19px; color: var(--mute); }
.r14-ck { margin-right: 6px; font: 9.5px/19px var(--mono); letter-spacing: 0.12em; text-transform: uppercase; }
.r14-count + .r14-imp { margin-top: 22px; }

@media (max-width: 860px) {
  .rb-r, .rb-two .rb-r { grid-template-columns: minmax(0, 1fr) 5.4em; row-gap: 3px; }
  .rb-two .rb-r { grid-template-columns: minmax(0, 1fr) 6.8em; }
  .rb-l { grid-column: 1 / -1; font-size: 15px; line-height: 20px; }
  .fig-key { font-size: 10px; gap: 2px 12px; }
  .rt-dt table { font-size: 14px; }
  .r14-dl > div { grid-template-columns: 1fr; }
  .fig-lines .fig-t, .fig-dist .fig-t { font-size: 9px; }
  .r14-dl dt { line-height: 16px; }
}
