/* Replication labs: the series page and one page per replicated paper. Builds on tokens.css and guides.css. */

/* Video poster under the page header */
.r-video { position: relative; display: block; margin: 36px 0 0; max-width: 960px; border-radius: var(--oe-r-window); overflow: hidden;
  border: 1px solid var(--oe-line); box-shadow: var(--oe-shadow-float); background: var(--oe-night); text-decoration: none; }
.r-video img { display: block; width: 100%; height: auto; }
a.r-video:hover { border-color: var(--oe-beam); }
.r-video__play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 14px 24px; border-radius: var(--oe-r-pill);
  background: rgba(5, 10, 18, .86); border: 1px solid var(--oe-beam); color: var(--oe-text-strong); font-size: 1rem; white-space: nowrap; }
.r-video__play::before { content: '▶'; margin-right: 10px; color: var(--oe-beam); }
.r-video--soon { margin-left: 0; margin-right: 0; }
.r-video--soon figcaption { padding: 12px 18px; border-top: 1px solid var(--oe-line); background: var(--oe-deep); color: var(--oe-text); font-size: .9375rem; }

/* Figures drawn from the lab run: inline SVG on the same paper surface as the site's charts */
.r-fig__host { padding: 18px 20px 12px; }
.r-fig svg { display: block; width: 100%; height: auto; }
.r-fig svg text { font-family: var(--oe-font); }
.r-label { font-size: 15px; fill: var(--oe-ink-muted); }
.r-value { font-family: var(--oe-mono); font-size: 14px; fill: var(--oe-ink); }
.r-axis { stroke: #c5ccd6; stroke-width: 1.5; }
.r-bar--signal { fill: var(--oe-signal); background: var(--oe-signal); }
.r-bar--base { fill: #dbe3f1; background: #dbe3f1; }
.r-bar--accent { fill: #e09a00; background: #e09a00; }
.r-bar--muted { fill: #9aa7b2; background: #9aa7b2; }
.r-bar--pos { fill: #1f9d63; }
.r-bar--neg { fill: #d93a4a; }
.r-hbars { display: grid; gap: 8px; padding: 4px 0; }
.r-hrow { display: grid; grid-template-columns: minmax(96px, 32%) minmax(0, 1fr) 5.5em; align-items: center; gap: 12px; }
.r-hlabel { font-size: .875rem; line-height: 1.25; color: var(--oe-ink-muted); text-align: right; }
.r-htrack { height: 20px; border-radius: 5px; background: #eef1f6; overflow: hidden; }
.r-htrack b { display: block; height: 100%; border-radius: 5px; }
.r-hvalue { font-family: var(--oe-mono); font-size: .8125rem; color: var(--oe-ink); }
.r-sum { margin: 14px 0 4px; font-size: .9375rem; color: var(--oe-ink-muted); text-align: center; }
.r-sum b { font-family: var(--oe-mono); color: #b77d00; }
.r-pairs { display: grid; gap: 12px; padding: 4px 0; }
.r-pair { display: grid; grid-template-columns: minmax(96px, 32%) minmax(0, 1fr); align-items: center; gap: 12px; }
.r-pair__bars { display: grid; gap: 4px; }
.r-pair__row { display: grid; grid-template-columns: minmax(0, 1fr) 4em; align-items: center; gap: 12px; }
.r-pair .r-htrack { height: 14px; }
.r-legend { display: flex; flex-wrap: wrap; gap: 6px 22px; margin: 0 0 8px; font-size: .875rem; color: var(--oe-ink-muted); }
.r-legend i { display: inline-block; width: 12px; height: 12px; margin-right: 8px; border-radius: 3px; vertical-align: -1px; }
.r-panels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 22px; }
.r-panel { margin: 0; }
.r-panel figcaption { margin: 0 0 2px; font-size: .9375rem; font-weight: 600; color: var(--oe-ink); }

/* Tables built from the run */
.r-table table { font-size: 1rem; }
.r-table td.g-right { font-family: var(--oe-mono); font-size: .9375rem; white-space: nowrap; }
.r-table .r-strong td { color: var(--oe-text-strong); font-weight: 600; background: rgba(34, 99, 237, .1); }
.r-table .r-neg { color: #ff8a96; }
.r-table .r-pos { color: var(--oe-ok); }
.r-status { white-space: nowrap; font-weight: 600; }
.r-status--match { color: var(--oe-ok); }
.r-status--rounding, .r-status--difference { color: var(--oe-attention); }

/* Series page */
.r-steps { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }

@media (max-width: 600px) {
  .r-fig__host { padding: 12px 10px 8px; overflow-x: auto; }
  .r-hrow { gap: 8px; }
  .r-panels { grid-template-columns: 1fr; }
  .r-video__play { padding: 10px 16px; font-size: .875rem; }
}

/* Figures sit apart from the paragraph above and the next figure's text */
.g-body > figure.r-fig { margin-top: 32px; }
.g-body > figure.r-fig + * { margin-top: 28px; }

/* Generic charts drawn from each paper's JSON: scatter and line plots in two sizes, estimate rows with intervals */
.r-svg--narrow { display: none; }
.r-grid { stroke: #e6eaf0; stroke-width: 1; }
.r-tick { fill: var(--oe-ink-muted); font-family: var(--oe-mono); }
.r-axis-title { fill: var(--oe-ink); font-weight: 600; }
.r-dot { fill: var(--oe-signal); fill-opacity: .5; }
.r-dot--hi { fill: #e09a00; fill-opacity: 1; stroke: #fff; stroke-width: 1.5; }
.r-plabel { fill: var(--oe-ink); font-weight: 600; paint-order: stroke; stroke: #fff; stroke-width: 4px; }
.r-fit { stroke: #b77d00; stroke-width: 2.5; stroke-dasharray: 7 5; }
.r-line { fill: none !important; stroke-width: 3; stroke-linejoin: round; }
.r-line.r-bar--signal { stroke: var(--oe-signal); }
.r-line.r-bar--accent { stroke: #e09a00; }
.r-line.r-bar--muted { stroke: #9aa7b2; }
.r-coefs { display: grid; gap: 10px; padding: 4px 0; }
.r-coef { display: grid; grid-template-columns: minmax(96px, 32%) minmax(0, 1fr) 7.5em; align-items: center; gap: 12px; }
.r-ctrack { position: relative; height: 22px; border-radius: 5px; background: #eef1f6; }
.r-ctrack i { position: absolute; top: 50%; transform: translateY(-50%); display: block; }
.r-zero { width: 2px; height: 100%; background: #9aa7b2; }
.r-ci { height: 6px; border-radius: 3px; opacity: .45; }
.r-pt { width: 14px; height: 14px; margin-left: -7px; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 0 0 1px rgba(0, 0, 0, .12); }
@media (max-width: 600px) {
  .r-svg--wide { display: none; }
  .r-svg--narrow { display: block; }
  .r-coef { grid-template-columns: minmax(84px, 30%) minmax(0, 1fr) 6.6em; gap: 8px; }
}
