
/* =========================================================================
   HOUSE FORMAT v1 (Aug 2026): scannable blocks inside posts.
   "The short version" (.tldr) opens the essay with three numbered takeaways;
   "What to do on Monday" (.monday) closes it with concrete steps. Both are
   token-driven so daylight and midnight themes work unchanged.
   ========================================================================= */
.tldr, .monday {
  margin: 32px 0; padding: 24px 26px;
  background: var(--bg-2); border: 1px solid var(--line); border-radius: var(--radius);
}
.monday { border-left: 3px solid var(--accent); border-radius: 0 var(--radius) var(--radius) 0; }
.box__label {
  display: block; font-size: 12.5px; letter-spacing: 0.04em; text-transform: uppercase;
  font-weight: 650; color: var(--accent); margin: 0 0 14px;
}
.tldr ol, .monday ol { margin: 0; padding-left: 20px; color: var(--ink-soft); }
.tldr li, .monday li { margin-bottom: 12px; font-size: 16.5px; line-height: 1.55; }
.tldr li:last-child, .monday li:last-child { margin-bottom: 0; }
.tldr b, .monday b { color: var(--ink); font-weight: 600; }
.post-sign { font-weight: 650; color: var(--ink); letter-spacing: -0.01em; }
.post-cta .signup { margin-top: 4px; }
.post-cta__fine { margin: 16px 0 0; font-size: 13.5px; color: var(--ink-mute); }

/* Stat grid: "by the numbers" media block, added for data-heavy posts. */
.stats {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 14px; margin: 32px 0;
}
.stat {
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 20px 18px; text-align: center;
}
.stat__num { display: block; font-size: 26px; font-weight: 680; letter-spacing: -0.02em; color: var(--accent); line-height: 1.15; }
.stat__label { display: block; margin-top: 8px; font-size: 13px; color: var(--ink-soft); line-height: 1.4; }

/* Architecture diagram: stacked layer cards, for posts explaining a system. */
.arch { margin: 32px 0; display: flex; flex-direction: column; gap: 0; }
.arch__layer {
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 20px 24px;
}
.arch__layer h4 { margin: 0 0 6px; font-size: 15.5px; letter-spacing: -0.01em; color: var(--ink); }
.arch__layer p { margin: 0; font-size: 14.5px; color: var(--ink-soft); }
.arch__arrow { text-align: center; color: var(--ink-mute); font-size: 13px; padding: 6px 0; }

/* Partner / entity chip row */
.partners { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 32px; }
.partners span {
  font-size: 13px; font-weight: 550; color: var(--ink-soft);
  background: var(--bg-2); border: 1px solid var(--line); border-radius: 999px;
  padding: 6px 13px;
}

/* Cause and effect chain: mechanism rows, for posts arguing why something
   matters rather than just describing how it works. */
.causeeffect { margin: 32px 0; display: flex; flex-direction: column; gap: 14px; }
.causeeffect__row {
  display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items: center;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 20px 22px;
}
.causeeffect__cause, .causeeffect__effect { font-size: 14.5px; color: var(--ink-soft); line-height: 1.55; }
.causeeffect__cause b, .causeeffect__effect b { color: var(--ink); font-weight: 600; }
.causeeffect__label {
  display: block; font-size: 11px; letter-spacing: 0.05em; text-transform: uppercase;
  font-weight: 650; color: var(--accent); margin-bottom: 6px;
}
.causeeffect__arrow { color: var(--accent); text-align: center; }
.causeeffect__arrow svg { display: block; margin: 0 auto; }

@media (max-width: 700px) {
  .causeeffect__row { grid-template-columns: 1fr; text-align: left; }
  .causeeffect__arrow { transform: rotate(90deg); padding: 2px 0; }
}

/* Hand-drawn SVG diagrams: a bordered figure card holding an inline chart plus
   a caption stating its one claim. Token-driven throughout (fills/strokes set
   inline via CSS vars in the SVG markup itself), so daylight/midnight both
   render correctly with no separate dark-mode SVG. */
.diagram { margin: 36px 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px 24px 18px; }
.diagram svg { display: block; width: 100%; height: auto; }
.diagram figcaption { margin-top: 14px; font-size: 13.5px; color: var(--ink-mute); line-height: 1.5; }
