/* ==========================================================================
   p-case.css — exp38, scoped to TWO pages only:
     life-after-the-audit.html (body[data-page="life-after"])
     case-jsonparser.html      (body[data-page="case-jsonparser"])

   Loads LAST in both heads, after s35-a11y.css and s37-a11y.css. Every rule
   is scoped with body[data-page] so nothing here can reach another page.
   Colour is token-only; no new palette entries. Corner language rides
   var(--radius) so terminal's zero ladder holds.

   Contents
     1. Prose body blocks   — .cs-body, mirrors .au-body metrics (66ch floor)
     2. The corpus tree     — .cj-tree / .cj-treecap (case page only),
                              modelled on p35-audit's .au-tree
     3. SVG figure floor    — no figure text under 12px (DESIGN.md founder
                              item 14); both figures ride .fig-scroll so the
                              floor survives narrow viewports
     4. Link rows           — spacing for wrapped .link-row on these pages
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. PROSE BODY BLOCKS (same metrics as p35-audit's .au-body)
   -------------------------------------------------------------------------- */
body[data-page="life-after"] .cs-body,
body[data-page="case-jsonparser"] .cs-body{max-width:66ch;font-size:1.05rem;line-height:1.65;}
body[data-page="life-after"] .cs-body p,
body[data-page="case-jsonparser"] .cs-body p{margin:0 0 1.05rem;}
body[data-page="life-after"] .cs-body p:last-child,
body[data-page="case-jsonparser"] .cs-body p:last-child{margin-bottom:0;}
body[data-page="life-after"] .cs-body strong,
body[data-page="case-jsonparser"] .cs-body strong{font-weight:600;}

/* the one-line hard statement under a section's prose (mono, machine layer) */
body[data-page="life-after"] .cs-under,
body[data-page="case-jsonparser"] .cs-under{
  margin:2.2rem 0 0;padding:1.1rem 0 0;border-top:1px solid var(--hair);
  max-width:66ch;font-family:var(--mono);font-size:.82rem;line-height:1.7;color:var(--muted);
}
body[data-page="life-after"] .cs-under b,
body[data-page="case-jsonparser"] .cs-under b{color:var(--ink);font-weight:500;}

/* --------------------------------------------------------------------------
   2. THE CORPUS TREE (case page only; .au-tree chassis, radius from token)
   -------------------------------------------------------------------------- */
body[data-page="case-jsonparser"] .cj-tree{
  margin:0;max-width:100%;padding:1.35rem 1.5rem 1.45rem;overflow-x:auto;
  background:var(--card);border:1px solid var(--hair);border-radius:var(--radius);
  font-family:var(--mono);font-size:.83rem;line-height:1.85;color:var(--ink);
  white-space:pre;
  -webkit-overflow-scrolling:touch;
}
body[data-page="case-jsonparser"] .cj-tree .c{color:var(--muted);}
body[data-page="case-jsonparser"] .cj-treecap{
  margin:1.1rem 0 0;font-family:var(--mono);font-size:.75rem;line-height:1.7;
  color:var(--muted);max-width:66ch;
}
@media (max-width:760px){
  body[data-page="case-jsonparser"] .cj-tree{font-size:.76rem;padding:1.1rem 1.1rem 1.2rem;}
}

/* --------------------------------------------------------------------------
   3. SVG FIGURE TYPE FLOOR (12px minimum; figures ride .fig-scroll)
   -------------------------------------------------------------------------- */
body[data-page="life-after"] .fig text,
body[data-page="case-jsonparser"] .fig text{font-size:12.5px;}
body[data-page="life-after"] .fig .lbl,
body[data-page="case-jsonparser"] .fig .lbl{font-size:12px;letter-spacing:.09em;}
body[data-page="life-after"] .fig .big,
body[data-page="case-jsonparser"] .fig .big{font-size:15px;}

/* --------------------------------------------------------------------------
   4. LINK ROWS — wrapped quiet-link rows on these pages open their row gap
   so s37-a11y's tap-target halos can never intersect (same device as
   p-method's .mp-links / .au-links rules).
   -------------------------------------------------------------------------- */
body[data-page="life-after"] .link-row,
body[data-page="case-jsonparser"] .link-row{gap:1.4rem 1.6rem;margin-top:1.6rem;}
body[data-page="life-after"] .link-row .cta-quiet::after,
body[data-page="case-jsonparser"] .link-row .cta-quiet::after{inset:-0.65rem -0.55rem;}
