/* primecode — /support/ route stylesheet.
   Enqueued as `primecode-support` with `primecode-interior` as its dependency,
   so the band, the content column and all content typography come from
   interior.css and are NOT repeated here. What is left is what only this
   route has: the severity description lists, the release table, and the two
   places where its spacing differs from the shared rhythm.

   Every value is measured from migration/capture/source/support/ —
   computed.json for type and the release table, pixel scans of
   1440/screenshot.png for the chip boxes and vertical rhythm. */


/* ---- section chips --------------------------------------------------------
   The `#help` and `#support` chips are separated from the preceding paragraph
   by more than the shared 20px widget gap. Scanned at 1440: the last
   paragraph of the Help Desk block ends at y=584 and the "Support
   Commitments" chip fill starts at y=638. A chip is inline-block, so the
   paragraph's own 14.4px does not collapse into it: 584 + 14.4 + 40 = 638.4.
   The shared rule supplies 20px; this route measures 40px. */
.pc-support .entry-content > p + .pc-chip { margin-block-start: 40px; }

/* The "RMS" heading sits 54px clear of the release table's last row rule,
   where the shared block gap would give 20px. */
.pc-support .entry-content > .pc-releases + :is(h2, h3, h4) { margin-block-start: 54px; }


/* ---- severity banner ------------------------------------------------------
   The same chip component, full width and centred rather than shrink-wrapped.
   Measured @1440: x=160 w=1120, 44px tall (24px h4 + 2x10 padding), #F9D921. */
.pc-support .entry-content .pc-support__banner {
  display: block;
  font-size: var(--pc-fs-h4);
  text-align: center;
}


/* ---- severity / response blocks -------------------------------------------
   The source builds these as nested Elementor sections of 2
   (`elementor-col-50`, 15 of them) or 3 (`elementor-col-33`, 12 of them)
   equal columns; they are term/definition pairs, so they are description
   lists here. Measured: cells 10px padding, 16px text on a 16px line box,
   label column 700. Rules between rows are 1px #E4E4E4; there is none above
   the first row or below the last. */
.pc-deflist { margin-block: 0 var(--pc-chip-gap); }
.pc-deflist__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.pc-deflist__row + .pc-deflist__row {
  border-block-start: 1px solid var(--pc-rule);
}
.pc-deflist dt,
.pc-deflist dd {
  margin: 0;
  padding: var(--pc-chip-pad);
  font-size: var(--pc-fs-body);
  line-height: var(--pc-lh-tight);
}
.pc-deflist dt { font-weight: var(--pc-fw-hero); }
/* The explanatory second line inside a label cell (source: `<b>…</b><br>…`). */
.pc-deflist__note {
  display: block;
  font-weight: var(--pc-fw-body);
}

/* The "Initial Response To:" block: 3 columns, black rules above, between
   and below (5 measured), and cells centred rather than top-aligned. */
.pc-deflist--framed {
  border-block: 1px solid var(--pc-black);
}
.pc-deflist--framed .pc-deflist__row {
  grid-template-columns: repeat(3, 1fr);
}
.pc-deflist--framed .pc-deflist__row + .pc-deflist__row {
  border-block-start-color: var(--pc-black);
}
.pc-deflist--framed dt,
.pc-deflist--framed dd {
  display: flex;
  align-items: center;
}


/* ---- release table --------------------------------------------------------
   Lifted verbatim from the plugin-free `.pc-releases` component already on
   production, with its five local custom properties replaced by the theme
   tokens of identical value (#F9D921 secondary, #000 black, #FCFCFC
   surface-odd, #F9F9F9 surface-even, #E4E4E4 rule). The inline <style> it
   carries on production is what the CSP goal forbids; the markup is
   unchanged, scroll region and caption included. Cells inherit the 24px body
   line box, which is what the source renders. */
.pc-releases { margin-block: 0 var(--pc-chip-gap); }
.pc-releases__scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.pc-releases__table {
  width: 100%;
  min-width: 44rem;
  border-collapse: collapse;
  font-size: var(--pc-fs-body);
  text-align: left;
}
.pc-releases__caption {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.pc-releases__table th,
.pc-releases__table td {
  padding: .9rem 1rem;
  border: 0;
  border-block-end: 1px solid var(--pc-rule);
  text-align: left;
  vertical-align: top;
}
.pc-releases__table thead th {
  border-block-end: 0;
  background: var(--pc-secondary);
  color: var(--pc-black);
  font-weight: var(--pc-fw-nav);
}
.pc-releases__table tbody tr:nth-child(odd) { background: var(--pc-surface-odd); }
.pc-releases__table tbody tr:nth-child(even) { background: var(--pc-surface-even); }
.pc-releases__table tbody th { font-weight: var(--pc-fw-nav); }


/* ---------------------------------------------------------------------------
   Responsive — the source stacks every column below Elementor's 767px
   breakpoint (verified against 390/screenshot.png); the release table keeps
   its 44rem min-width and scrolls inside the region instead.
   --------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .pc-deflist__row,
  .pc-deflist--framed .pc-deflist__row {
    grid-template-columns: 1fr;
  }
  .pc-deflist--framed dt,
  .pc-deflist--framed dd {
    display: block;
  }
}
