/**
 * September 13 design bundle, ported verbatim.
 *
 * Markup under a `.x13` root carries the artboard's own inline styles. This
 * file supplies only what an inline style cannot: the artboard's base reset,
 * hover and focus states (`style-hover` in the artboards), and the media
 * queries from each artboard's helmet. Class names are prefixed `x13-` so no
 * earlier stylesheet in the theme can match them.
 */

/* ---- Base: the artboard environment (UA defaults + the helmet reset) ---- */
.x13, .x13 *, .x13 *::before, .x13 *::after { box-sizing: border-box; margin: 0; padding: 0; }
.x13 { font-family: 'IBM Plex Sans', sans-serif; font-size: 16px; line-height: normal; letter-spacing: normal; text-transform: none; text-align: left; -webkit-font-smoothing: antialiased; }
.x13 a { text-decoration: none; }
.x13 a:focus-visible, .x13 [role="button"]:focus-visible, .x13 button:focus-visible, .x13 input:focus-visible { outline: 2px solid #dcb352; outline-offset: 2px; }
.x13 img, .x13 svg { display: inline; max-width: none; vertical-align: baseline; }
.x13 h1, .x13 h2, .x13 h3, .x13 h4, .x13 h5, .x13 h6 { font: inherit; color: inherit; letter-spacing: inherit; text-transform: inherit; line-height: inherit; }
.x13 ul, .x13 ol { list-style: none; }
.x13 button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; text-transform: inherit; letter-spacing: inherit; box-shadow: none; border-radius: 0; }
.x13 button:hover, .x13 button:focus { box-shadow: none; }
.x13 input, .x13 textarea, .x13 select { font: inherit; color: inherit; }
.x13 [hidden] { display: none !important; }

/* September Discourse graph and publication controls. */
.aj-dc-publication-label { display:block; margin:18px 0 7px; color:#16233a; font:700 11px/1.3 'IBM Plex Sans',sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.aj-dc-publication { display:block; width:100%; min-height:48px; padding:10px 38px 10px 12px; border:1px solid #b9c2cf; border-radius:0; background:#fff; color:#16233a; font:600 14px/1.3 'IBM Plex Sans',sans-serif; }
.aj-dc-publication:focus-visible, .aj-dc-graph-toggle button:focus-visible { outline:3px solid #dcb352; outline-offset:2px; }
.aj-dc-graph-toggle { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0 0 4px; }
.aj-dc-graph-toggle button { display:flex; align-items:center; gap:10px; min-height:56px; padding:8px 12px; border:1px solid #c9d1de; background:#fff; color:#1a3d74; font:700 12px/1.2 'IBM Plex Sans',sans-serif; cursor:pointer; text-align:left; }
.aj-dc-graph-toggle button[aria-pressed="true"] { border-color:#1a3d74; box-shadow:inset 0 -3px #dcb352; background:#edf2f8; }
.aj-dc-preview { position:relative; display:block; width:42px; height:37px; flex:none; border:1px solid #8e9aab; background:linear-gradient(90deg,transparent 49%,#d8dee8 50%,transparent 51%),linear-gradient(transparent 49%,#d8dee8 50%,transparent 51%),#fff; }
.aj-dc-preview::before,.aj-dc-preview::after { content:""; position:absolute; width:5px; height:5px; border-radius:50%; background:#1a3d74; }
.aj-dc-preview-lens::before { left:9px; top:8px; }.aj-dc-preview-lens::after { right:9px; bottom:7px; background:#c33d29; }
.aj-dc-preview-theel { background:radial-gradient(circle at 0 100%,transparent 0 23%,#e2e8ef 24% 25%,transparent 26% 45%,#e2e8ef 46% 47%,transparent 48%),#fff; }
.aj-dc-preview-theel::before { left:23px; top:5px; background:#b58b30; }.aj-dc-preview-theel::after { right:6px; bottom:7px; background:#12505e; }
.aj-dc-deck-hint { margin-top:12px; color:#7c6c5f; font:700 10px/1.3 'IBM Plex Sans',sans-serif; letter-spacing:.1em; text-transform:uppercase; }
@media (max-width:780px) {
  .x13-dc-phone { overflow-x:clip !important; }
}
/* Phone Discourse, 25 September design. The strip stays in reach through the graphs and the pair deck. */
.x13-dc-phone .aj-dc-strip,
.x13-dc-phone .aj-dc-strip:hover,
.x13-dc-phone .aj-dc-strip:focus { display:flex; align-items:center; gap:11px; position:sticky; top:0; z-index:40; width:100%; min-height:64px; margin:0; padding:0 18px; background:#fbf3f1; color:#16233a; border:0; border-top:1px solid #c33d29; border-bottom:1px solid #c33d29; border-radius:0; box-shadow:0 6px 14px -12px rgba(19,41,75,.5); cursor:pointer; text-align:left; }
.x13-dc-phone .aj-dc-strip:active { background:#f6e6e2; }
.x13-dc-phone .aj-dc-strip:focus-visible, .x13-dc-phone .aj-dc-tab:focus-visible { outline:3px solid #dcb352; outline-offset:-3px; }
.x13-dc-phone .aj-dc-tabs { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; align-items:end; margin-top:18px; }
.x13-dc-phone .aj-dc-tab,
.x13-dc-phone .aj-dc-tab:hover,
.x13-dc-phone .aj-dc-tab:focus { display:flex; align-items:center; gap:8px; min-height:56px; margin-bottom:-1px; padding:8px 9px; background:rgba(255,255,255,.82); color:#16233a; border:1px solid rgba(255,255,255,.82); border-bottom-color:#fff; border-radius:6px 6px 0 0; box-shadow:none; cursor:pointer; text-align:left; }
.x13-dc-phone .aj-dc-tab[aria-pressed="true"] { background:#fff; border-color:#fff; }
.x13-dc-phone .aj-dc-tab .aj-dc-tab-eye { color:#6f7a8e; }
.x13-dc-phone .aj-dc-tab[aria-pressed="true"] .aj-dc-tab-eye { color:#16233a; }
.x13-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Shared select menu. The native control stays in the DOM for form values and existing listeners. */
.aj-select { display:block; position:relative; width:100%; min-width:0; font-family:'IBM Plex Sans',sans-serif; }
.aj-select > select { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:0 !important; opacity:0 !important; pointer-events:none !important; overflow:hidden !important; }
.aj-select-trigger { display:flex !important; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; padding:10px 13px !important; border:1px solid #b9c7d8 !important; border-radius:8px !important; background:#fff !important; color:#16233a !important; box-shadow:0 1px 3px rgba(22,35,58,.05) !important; font:600 13px/1.35 'IBM Plex Sans',sans-serif !important; text-align:left; cursor:pointer; }
.aj-select-trigger:hover, .aj-select.is-open .aj-select-trigger { border-color:#1a3d74 !important; background:#f8faff !important; }
.aj-select-trigger:focus-visible { outline:3px solid #dcb352 !important; outline-offset:2px; }
.aj-select-value { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.aj-select-trigger svg { flex:none; width:16px; height:16px; fill:none; stroke:#1a3d74; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .18s ease; }
.aj-select.is-open .aj-select-trigger svg { transform:rotate(180deg); }
.aj-select-panel { position:fixed; z-index:100000; display:flex; flex-direction:column; overflow:hidden; border:1px solid #c9d3e1; border-radius:10px; background:#fff; box-shadow:0 16px 42px rgba(22,35,58,.2),0 3px 10px rgba(22,35,58,.08); font-family:'IBM Plex Sans',sans-serif; }
.aj-select-panel[hidden], .aj-select-option[hidden] { display:none !important; }
.aj-select-search-wrap { flex:none; padding:10px; border-bottom:1px solid #e7ebf1; background:#fff; }
.aj-select-search { display:block; width:100%; height:38px; padding:8px 11px; border:1px solid #d6deea; border-radius:6px; background:#f7f9fc; color:#16233a; font:500 13px/1.3 'IBM Plex Sans',sans-serif; }
.aj-select-search:focus { outline:2px solid #dcb352; outline-offset:1px; }
.aj-select-options { min-height:0; overflow-y:auto; padding:5px; scrollbar-color:#b5c2d2 transparent; }
.aj-select-option { display:block; width:100%; min-height:38px; padding:8px 11px; border:0; border-radius:6px; background:transparent; color:#25364d; font:500 13px/1.35 'IBM Plex Sans',sans-serif; text-align:left; cursor:pointer; }
.aj-select-option:hover, .aj-select-option:focus-visible { outline:none; background:#edf2f8; color:#1a3d74; }
.aj-select-option[aria-selected="true"] { background:#e6edf7; color:#173c71; font-weight:700; }
.aj-select-option[aria-selected="true"]::after { content:'✓'; float:right; margin-left:10px; color:#1a3d74; }

/* ---- Shell switch: phone shell up to 699px, desktop shell from 700px ---- */
.x13-phone-only { display: none !important; }
/* The site ground is the paper token (finding 43). bbPress ships
   `body.bbpress { background:#e8f1fa }` and loads after this file, so the
   html prefix is what keeps the token on pages carrying a bbPress body class. */
html body.x13-phone-pad { background: #f6f7fa; }
@media (max-width: 699px) {
  .x13-desk-only { display: none !important; }
  .x13-phone-only { display: block !important; }
  /* Artboard pages set padding-bottom:92px on their root to clear the tab bar. */
  body.x13-phone-pad { padding-bottom: 0 !important; }
  body.x13-phone-pad #page { padding-bottom: 92px; }
  /* The phone home page ends on the Theels band or "Your profile", whose
     #e8ecf3 runs down behind the tab bar in the 27 September Mobile Home;
     the space kept clear for the tab bar takes the same colour. */
  body.home.x13-phone-pad #page { background: #e8ecf3; }
}

/* ======================================================================
   Header.dc.html
   ====================================================================== */
.x13-h-pair:hover { background: #14304f !important; border-color: #14304f !important; }
.x13-h-bell:hover { background: #eef3fa !important; }
.x13-h-mark:hover { color: #c33d29 !important; }
.x13-h-line:hover { background: #f2f5f9 !important; }
.x13-h-profile:hover { background: #eef3fa !important; }
.x13-h-logout:hover { border-color: #c33d29 !important; color: #c33d29 !important; }
.x13-h-login:hover { background: #1a3d74 !important; color: #fff !important; }
.x13-h-register:hover { background: #a83424 !important; border-color: #a83424 !important; }
.x13-h-collab:hover { border-color: #1a3d74 !important; color: #1a3d74 !important; }
.x13-h-tool-navy:hover { background: #f2f5f9 !important; border-bottom-color: #1a3d74 !important; }
.x13-h-tool-red:hover { background: #f2f5f9 !important; border-bottom-color: #c33d29 !important; }
.x13-h-tool-gold:hover { background: #f2f5f9 !important; border-bottom-color: #87651f !important; }
@media (max-width: 860px) {
  .x13-tools { grid-template-columns: 1fr 1fr !important; }
  .x13-tools a:nth-child(odd) { border-right: 1px solid #e7eaf0 !important; }
  .x13-tools a:nth-child(even) { border-right: none !important; }
  .x13-tools a:nth-child(1), .x13-tools a:nth-child(2) { border-bottom: 1px solid #e7eaf0 !important; }
}
@media (max-width: 560px) {
  .x13-tools { grid-template-columns: 1fr !important; }
  .x13-tools a { border-right: none !important; border-bottom: 1px solid #e7eaf0 !important; }
  .x13-tools a:last-child { border-bottom: 3px solid transparent !important; }
}
@media (max-width: 720px) {
  .x13-util { padding-left: 16px !important; padding-right: 16px !important; }
  .x13-util-links { gap: 12px 16px !important; }
  .x13-masthead { padding-left: 20px !important; padding-right: 20px !important; }
}
@media (max-width: 600px) {
  .x13-tag-skt, .x13-tag-sep { display: none !important; }
  .x13-util-hide-sm { display: none !important; }
}

/* ======================================================================
   Footer.dc.html
   ====================================================================== */
.x13-f-collab:hover { background: #a83424 !important; }
.x13-f-social:hover { color: #fff !important; border-color: rgba(255,255,255,.55) !important; }
.x13-f-privacy:hover { color: #fff !important; }
@media (max-width: 860px) {
  .x13-ft-grid { grid-template-columns: 1fr 1fr !important; }
  .x13-ft-brand { grid-row: auto !important; }
}
@media (max-width: 520px) {
  .x13-ft-grid { grid-template-columns: 1fr !important; }
}

/* ======================================================================
   Mobile Masthead.dc.html, Mobile Tab Bar.dc.html, Mobile Next Step.dc.html
   ====================================================================== */
@keyframes ajMenuIn { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
html.x13-lock, html.x13-lock body { overflow: hidden; }
.x13-mm a { color: #1a3d74; }
.x13-mm a:hover { color: #16305c; }
.x13 .x13-mm-arrow { display: flex; align-items: center; justify-content: center; flex: 0 0 16px; width: 16px; height: 16px; color: #626e81; }
.x13 .x13-mm-arrow svg { display: block; width: 16px; height: 16px; }
/* The 27 September Mobile Home masthead: menu, the wordmark with the tagline
   under it, the Pair Search lens; 62px with its two rules. The wordmark is the
   design's 17px at 390 wide and shrinks with the screen below that, so it
   never pushes the two controls off a narrower phone. */
.x13 .x13-mm-bar { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; align-items: center; column-gap: 8px; padding: 7px 14px 5px; }
.x13 .x13-mm-bar > [data-x13-menu-open] { justify-self: start; }
.x13 .x13-mm-brand { min-width: 0; min-height: 44px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.x13 .x13-mm-wordmark { font-family: 'EB Garamond', serif; font-size: clamp(13px, 4.36vw, 17px); color: #1a3d74; letter-spacing: .08em; text-transform: uppercase; font-weight: 500; white-space: nowrap; }
.x13 .x13-mm-actions { display: flex; width: 44px; justify-content: flex-end; }
.x13 .x13-mm-tagline { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 0 6px; margin-top: 2px; min-width: 0; }
.x13 .x13-mm-tagline > span { white-space: nowrap; }
/* Under 360 wide the two halves of the tagline take a line each, without the dot. */
@media (max-width: 359px) { .x13 .x13-mm-tagline > span:nth-child(2) { display: none; } }
.x13-tab a { color: #1a3d74; }
.x13-next a:hover { color: #16305c; }

/* The header must not form its own stacking context: the phone menu and the
   bell sheet (fixed, z 100/110) sit above the tab bar (fixed, z 50). */
#masthead.aj-site-header { position: static; z-index: auto; }

/* ======================================================================
   Armchair Journal.dc.html (desktop front page)
   ====================================================================== */
@keyframes ajs-rise { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ajs-spin { to { transform: rotate(360deg); } }
.x13-home-d a { color: #1a3d74; }
.x13-home-d a:hover { color: #c33d29; }
/* Keep the wheel and highlight updates immediate throughout a gesture. */
.x13 [data-x13-range] { touch-action: none; user-select: none; -webkit-user-select: none; }
.x13 [data-x13-you] { transition: none !important; }
.x13 [data-x13-shelf-layer] *,
.x13 [data-x13-near], .x13 [data-x13-near] *,
.x13 [data-x13-far], .x13 [data-x13-far] *,
.x13 [data-x13-dots] *, .x13 [data-x13-gap],
.x13 [data-x13-stem-near], .x13 [data-x13-stem-far] { transition: none !important; }
.x13 .has-slider-focus [data-x13-you] { outline: 2px solid #dcb352; outline-offset: 2px; border-radius: 50%; }
/* Client request, 19 September: until the reader first moves the wheel, it
   glides a little along the bar so it reads as a slider. `translate` adds to
   the position spectrum-shelf.js writes into `transform`, so the two never
   fight; the script removes `is-nudging` on the first move. */
@keyframes x13-wheel-nudge {
  0%, 70%, 100% { translate: 0 0; }
  25% { translate: 22px 0; }
  55% { translate: -22px 0; }
}
.x13 .is-nudging [data-x13-you] { animation: x13-wheel-nudge 5s ease-in-out infinite; }
.x13-shelf-card, .x13-shelf-miss {
  --shelf-category: #606c7e; --shelf-title: #626b77; --shelf-author: #5f6a7a;
  --shelf-hair: #e3e7ee; --shelf-track: #dfe3ea; --shelf-tick: #d2d8e2;
  --shelf-mark: #5f6a7a; --shelf-band: #606c7e; --shelf-fill: #c7ceda;
  --shelf-image-filter: grayscale(1); --shelf-image-opacity: .45;
  background: #eef1f5; border: 1px solid #e3e7ee; border-top: 3px solid var(--shelf-fill);
  cursor: pointer; transition: transform .15s ease;
}
.x13-shelf-card.is-lit, .x13-shelf-miss.is-lit {
  --shelf-category: #c33d29; --shelf-title: #16233a; --shelf-author: #667083;
  --shelf-hair: #eef1f6; --shelf-track: #e4e8ef; --shelf-tick: #ccd3dd;
  --shelf-mark: #16233a; --shelf-band: var(--shelf-band-tone); --shelf-fill: var(--shelf-fill-tone);
  --shelf-image-filter: none; --shelf-image-opacity: 1;
  background: #fff; border-color: var(--shelf-accent); border-top-color: var(--shelf-fill);
  box-shadow: 0 0 0 1.5px var(--shelf-accent), 0 26px 48px -18px rgba(20,41,75,.45);
}
.x13-shelf-dot { width: 7px; height: 7px; background: #5f6a7a; box-shadow: 0 0 0 1.5px #5f6a7a; }
.x13-shelf-dot.is-lit { width: 13px; height: 13px; background: var(--shelf-accent); box-shadow: 0 0 0 1.5px var(--shelf-accent); }
.x13-shelf-path { stroke: rgba(22,35,58,.09); stroke-width: 1; }
.x13-shelf-path.is-lit { stroke: var(--shelf-accent); stroke-width: 1.75; }
/* The phone cards keep one fixed height, so the wheel's row never moves as the
   reader drags past headlines of different lengths (the user, 27 September:
   "card height should not change", over the Mobile Home's own sizing). */
.x13 [data-x13-near], .x13 [data-x13-far] { height: 224px; min-height: 224px; }
.x13-shelf-phone-title { display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.x13-shelf-phone-meta > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 359px) {
  .x13 [data-x13-near], .x13 [data-x13-far] { height: 244px; min-height: 244px; }
  .x13-shelf-phone-title { -webkit-line-clamp: 5; }
}
@media (prefers-reduced-motion: reduce) {
  .x13 [data-x13-you] svg, .x13 .is-nudging [data-x13-you] { animation: none !important; }
  .x13-shelf-card, .x13-shelf-miss, .x13 [data-x13-stem-near], .x13 [data-x13-stem-far] { transition: none !important; }
}
.x13-shelf-card:hover { background: #fff !important; border-color: #1a3d74 !important; box-shadow: 0 14px 30px -14px rgba(0,0,0,.35) !important; transform: translate(-50%,-4px) !important; z-index: 20 !important; color: inherit !important; }
.x13-shelf-miss:hover { border-color: #1a3d74 !important; transform: translate(-50%,-4px) !important; box-shadow: 0 14px 30px -14px rgba(0,0,0,.35) !important; z-index: 20 !important; }
.x13-shelf-pill:hover { background: var(--x13-acc) !important; color: #fff !important; }
.x13-dx-cta:hover { background: #e6c25c !important; }
.x13-dx-lead:hover { transform: translateY(-3px) !important; }
.x13-kit-tile:hover { background: #fff !important; color: inherit !important; }
@media (max-width: 640px) {
  .x13-ajs-curves { grid-template-columns: 1fr !important; gap: 16px !important; }
  .x13-ajs-curves > div { grid-column: 1 !important; }
  .x13-ajs-lead { grid-template-columns: 1fr !important; gap: 10px; }
  .x13-ajs-lead > * { grid-column: 1 !important; grid-row: auto !important; }
  .x13-ajs-kit { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 560px) { .x13-ajs-h1 { font-size: 30px !important; } }

/* ======================================================================
   Mobile Home.dc.html (phone front page)
   ====================================================================== */
@keyframes ajm-spin { to { transform: rotate(360deg); } }
.x13-home-m a { color: #c33d29; }

/* ======================================================================
   Collaborate.dc.html / Mobile Collaborate.dc.html
   ====================================================================== */
.x13-collab-d a { color: #1a3d74; }
.x13-collab-d a:hover { color: #c33d29; }
.x13-collab-m a { color: #c33d29; }
.x13-cl-cta:hover { background: #1a3d74 !important; color: #fff !important; }
@media (max-width: 860px) {
  .x13-cl-row { grid-template-columns: 1fr !important; gap: 14px !important; }
  .x13-cl-row > div:first-child { border-right: none !important; padding-right: 0 !important; }
}

/* ======================================================================
   Privacy Policy.dc.html / Mobile Privacy.dc.html
   ====================================================================== */
.x13-pp-d a, .x13-pp-m a { color: #c33d29; }
.x13-pp-d a:hover, .x13-pp-m a:hover { color: #a83424; }
.x13-pp-link:hover { color: #c33d29 !important; }
@media (max-width: 900px) {
  .x13-pp-grid { grid-template-columns: 1fr !important; gap: 28px !important; }
  .x13-pp-toc { position: static !important; }
}

/* ======================================================================
   Login.dc.html / Mobile Login.dc.html
   ====================================================================== */
.x13-auth-d a { color: #1a3d74; }
.x13-auth-d a:hover { color: #c33d29; }
.x13-auth-m a { color: #c33d29; }
.x13-auth-d input::placeholder { color: #60708c; }
.x13-auth-d input:focus { outline: none; border-color: #1a3d74 !important; }
.x13-lg-submit:hover { background: #a83424 !important; color: #fff !important; }
.x13-lg-google:hover { border-color: #1a3d74 !important; color: #3b3f47 !important; }
@media (max-width: 900px) {
  .x13-lg-split { grid-template-columns: 1fr !important; }
  .x13-lg-panel { padding: 34px 28px !important; }
}

/* ======================================================================
   Write.dc.html / Mobile Write.dc.html
   ====================================================================== */
.x13-wr-d a, .x13-wr-m a { color: #c33d29; }
.x13-wr-d a:hover, .x13-wr-m a:hover { color: #8f2a1a; }
@media (max-width: 900px) {
  .x13-wr-hero, .x13-wr-cta { grid-template-columns: 1fr !important; }
  .x13-wr-cats { grid-template-columns: repeat(3,1fr) !important; }
  .x13-wr-cathead { grid-template-columns: 1fr !important; gap: 14px 0 !important; }
  .x13-wr-4col { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 640px) {
  .x13-wr-2col { grid-template-columns: 1fr !important; }
  .x13-wr-4col { grid-template-columns: 1fr !important; }
}

/* ======================================================================
   Join.dc.html / Mobile Join.dc.html
   ====================================================================== */
@keyframes slideDown { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
.x13-jn-d a { color: #c33d29; }
.x13-jn-m a { color: #1a3d74; }
@media (max-width: 699px) { body.x13-page-warm #page { background: #f5f1eb; } }
@media (max-width: 640px) {
  .x13-jn-h1 { font-size: 36px !important; }
  .x13-jn-2col { grid-template-columns: 1fr !important; }
}

/* ======================================================================
   About.dc.html / Mobile About.dc.html
   ====================================================================== */
.x13-ab-d a { color: #c33d29; }
.x13-ab-d a:hover { color: #8f2a1a; }
.x13-ab-m a { color: #1a3d74; }
.x13-ab-outline:hover { background: #1a3d74 !important; color: #fff !important; }
.x13-ab-solid:hover { background: #a83424 !important; color: #fff !important; }
.x13-ab-team:hover { box-shadow: 0 10px 26px -18px rgba(19,41,75,.5); }
.x13-ab-cta:hover { background: #a83424 !important; color: #fff !important; }
.x13-ab-ghost:hover { border-color: rgba(255,255,255,.7) !important; color: #fff !important; }
@media (max-width: 900px) {
  .x13-ab-hero { grid-template-columns: 1fr !important; }
  .x13-ab-hide-sm { display: none !important; }
  .x13-ab-2col { grid-template-columns: 1fr !important; }
  .x13-ab-4col { grid-template-columns: repeat(2,1fr) !important; }
  /* Spec 4.12 override: the archetype table reflows to three columns below 900px. */
  .x13-ab-regions { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
}

/* ======================================================================
   Authors.dc.html / Mobile Authors.dc.html
   ====================================================================== */
.x13-au-d a { color: #c33d29; }
.x13-au-d a:hover { color: #8f2a1a; }
.x13-au-m a { color: #c33d29; }
.x13-au-d input[type=text]:focus { border-color: #1a3d74 !important; outline: none; }
.x13-au-d input[type=text]::placeholder { color: #b4ada4; }
.x13-au-m input::placeholder { color: #636f83; }
.x13-au-m [data-shelf] { scrollbar-width: none; }
.x13-au-m [data-shelf]::-webkit-scrollbar { display: none; }
.x13-au-browse:hover { background: #a83424 !important; color: #fff !important; }
.x13-au-gold-link:hover { color: #fff !important; border-color: #fff !important; }
.x13-au-dim-link:hover { color: #fff !important; }
.x13-au-report:hover { background: #e6c25c !important; color: #1a3d74 !important; }
.x13-au-write:hover { color: #e6c25c !important; }
.x13-au-feat:hover { background: #f7f9fc; }
.x13-au-beat:not([disabled]):hover { background: #f2f4f8 !important; }
.x13-au-feat-grid > a:last-child { border-right: none; }
@media (max-width: 1100px) {
  .x13-au-filter-row1 { flex-wrap: wrap !important; row-gap: 8px !important; }
}
@media (max-width: 900px) {
  .x13-au-readout { grid-template-columns: minmax(0,1fr) !important; gap: 0 !important; }
  .x13-au-beat-rail { border-right: none !important; padding-right: 0 !important; margin-bottom: 26px; }
}
@media (max-width: 880px) {
  .x13-au-feat-grid { grid-template-columns: minmax(0,1fr) !important; }
  .x13-au-feat-grid > a { border-right: none !important; border-bottom: 1px solid #e4e8ef !important; }
  .x13-au-feat-grid > a:last-child { border-bottom: none !important; }
}
@media (max-width: 700px) {
  .x13-au-chart-toolbar input[type=text] { width: 130px !important; }
}

/* ======================================================================
   Section.dc.html / Mobile Section.dc.html (category)
   ====================================================================== */
@keyframes ajSheetUp { from { transform: translateY(18px); opacity: .4; } to { transform: translateY(0); opacity: 1; } }
@keyframes ajScrimIn { from { opacity: 0; } to { opacity: 1; } }
.x13-sec-d a, .x13-sec-m a { color: #c33d29; }
.x13-sec-d a:hover { color: #8f2a1a; }
.x13-sec-share:hover { background: rgba(255,255,255,.1) !important; }
.x13-sec-spine:hover { transform: rotate(180deg) translateX(5px) !important; box-shadow: 3px 0 7px rgba(22,35,58,.22) !important; color: #ffffff !important; }
.x13-scp-side:hover { background: rgba(22,50,89,.035); }
.x13-sec-red:hover { background: #a83424 !important; color: #fff !important; }
.x13-sec-ghost:hover { background: rgba(255,255,255,.1) !important; color: #f6f7fa !important; }
.x13-sec-row:hover { background: #fbfcfd; }
.x13-sec-more:hover { background: #1a3d74 !important; color: #fff !important; }
@media (max-width: 900px) {
  .x13-sec-lens { grid-template-columns: 1fr !important; gap: 26px !important; }
  .x13-sec-intro { grid-template-columns: 1fr !important; gap: 14px !important; align-items: start !important; }
  .x13-sec-lens-left { border-right: none !important; padding-right: 0 !important; border-bottom: 1px solid #eef1f6; padding-bottom: 22px; }
}
@media (max-width: 760px) {
  .x13-sec-mast { grid-template-columns: 1fr !important; gap: 30px !important; }
  .x13-scp-body { grid-template-columns: 1fr !important; }
  .x13-sec-rail > div { flex: 0 0 88vw !important; }
  .x13-scp-side-b { border-left: 0 !important; border-top: 1px solid #e8eaee !important; }
  .x13-sec-row { grid-template-columns: 1fr !important; gap: 16px !important; }
  .x13-sec-thead { display: none !important; }
  .x13-sec-h1 { font-size: 38px !important; }
  .x13-sec-h2 { font-size: 28px !important; }
}

/* ======================================================================
   Pair Search.dc.html / Mobile Pair Search.dc.html
   ====================================================================== */
.x13-ps-d a { color: #1a3d74; }
.x13-ps-d a:hover { color: #0f2749; }
.x13-ps-m a { color: #1a3d74; }
.x13-ps input::placeholder { color: #5e6a7c; font-style: italic; }
.x13-ps-signin:hover { background: #a83424 !important; color: #fff !important; }
.x13-ps-clear:hover { color: #c33d29 !important; }
.x13-ps-go:hover, .x13-ps-primary:hover { background: #14304f !important; }
.x13-ps-lucky:hover { border-color: #1a3d74 !important; color: #1a3d74 !important; }
.x13-ps-sug:hover { background: #f6f7fa; }
.x13-ps-trend:hover { background: #f0f2f7; }
.x13-ps-side:hover { background: rgba(22,50,89,.035); }
.x13-ps-target:hover { background: #f6f7fa !important; }
.x13-ps-red:hover { background: #a83424 !important; color: #fff !important; }
.x13-ps-underline:hover { text-decoration: underline !important; }
.x13-ps-related:hover { border-color: #1a3d74 !important; }
@media (max-width: 760px) {
  .x13-ps-pair { grid-template-columns: 1fr !important; }
  .x13-ps-pair-arrow { border-left: 0 !important; border-right: 0 !important; border-top: 1px solid #e8eaee !important; border-bottom: 1px solid #e8eaee !important; padding: 10px 8px !important; flex-direction: row !important; gap: 7px !important; }
  .x13-ps-pair-arrow span { writing-mode: horizontal-tb !important; transform: none !important; }
  .x13-pse-h1 { font-size: 32px !important; }
  .x13-pse-related { grid-template-columns: 1fr !important; }
}

/* ======================================================================
   Games.dc.html / Mobile Games.dc.html (hub)
   ====================================================================== */
.x13-gm a { color: #7e601c; }
.x13-gm a:hover { color: #6d5316; }
.x13-gm-signin:hover { background: #2c4f45 !important; color: #f4efdf !important; }
.x13-gm-seat:hover:not([disabled]) { background: #e6cd85 !important; transform: translateY(-2px); box-shadow: 0 10px 18px -8px rgba(0,0,0,.55); }
.x13-gm-lucky:hover:not([disabled]) { background: #fdf8ec !important; border-color: #a8481c !important; transform: translateY(-6px) rotate(-.6deg); box-shadow: 0 22px 34px -20px rgba(31,58,51,.55); }
.x13-gm-card:hover { transform: translateY(-12px) rotate(0deg) scale(1.035) !important; box-shadow: 0 30px 44px -18px rgba(0,0,0,.68), 0 0 0 2px rgba(201,169,79,.6) !important; background: #fffef9 !important; }
.x13-gm-share:hover { background: #fbf4e2 !important; }
.x13-gm-spend:hover { background: #a83424 !important; color: #fff !important; }
.x13-gm-spend-2:hover { background: rgba(31,58,51,.07) !important; color: #a8481c !important; }
.x13-gm .gm-hub[hidden] { display: none !important; }
/* Rounds: play, reveal and share states of both artboards */
.x13-gm-r-share:hover { color: #6b5410 !important; }
.x13-gm-r-exit:hover { color: #a8481c !important; }
.x13-gm-r-go:hover:not([disabled]) { background: #2c4f45 !important; }
.x13-gm-r button:disabled { opacity: 1; }
.x13-gm-r-read:hover { text-decoration: underline !important; }
.x13-gm-r-x:hover { color: #a8481c !important; }
.x13-gm-r-social:hover { background: #f4eedd !important; }
.x13-gm-r input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 4px; padding: 0; border: 0; box-shadow: none; background: #e3dccd; border-radius: 2px; outline: none; }
.x13-gm-r input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 22px; height: 22px; border-radius: 50%; background: #fffdf7; border: 3px solid #a8481c; cursor: pointer; box-shadow: none; }
.x13-gm-r input[type=range]::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: #fffdf7; border: 3px solid #a8481c; cursor: pointer; }
@keyframes gmIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* ----------------------------------------------------------------------
   The 19 September Bias Games: hub cards and the five-screen loop.
   The hover, animation and clamp rules the artboards carry in their own
   <style> block. The rules above belong to the six tables these replaced
   and no longer match anything; they are left where they are.
   ---------------------------------------------------------------------- */
.x13-gm .plate { transition: transform .22s cubic-bezier(.22,.9,.26,1); }
.x13-gm .peek { opacity: .92; transition: opacity .22s, transform .22s; }
.x13-gm .tile { transition: transform .14s ease, background .14s, box-shadow .14s; }
.x13-gm .key { transition: transform .09s ease, box-shadow .09s ease; }
.x13-gm .key:active { transform: translateY(1px); }
@media (hover: hover) and (pointer: fine) {
  .x13-gm .key:hover { transform: translateY(-1px); }
  .x13-gm .plate:hover:not([disabled]) { transform: translateY(-3px); }
  .x13-gm .plate:hover:not([disabled]) .peek { opacity: 1; transform: none; }
  .x13-gm .tile:hover { transform: translateY(-2px); }
}
.x13-gm .clamp6 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; overflow: hidden; }
.x13-gm .gm-open[disabled] { cursor: not-allowed; }
/* Kadence pads its buttons, centres their text and fades a disabled one to
   half. All three fight the artboards, which draw a round's answers as
   left-set cards. The few that are centred say so inline or centre by flex. */
.x13-gm-r button { padding: 0; text-align: left; }
.x13-gm-r button:disabled { opacity: 1; }
@keyframes gmPop { 0% { opacity: 0; transform: scale(.72); } 66% { opacity: 1; transform: scale(1.06); } 100% { opacity: 1; transform: scale(1); } }
@keyframes pop { 0% { opacity: 0; transform: scale(.7); } 65% { opacity: 1; transform: scale(1.06); } 100% { opacity: 1; transform: scale(1); } }
@keyframes riseIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes spin { from { transform: rotateY(0); } to { transform: rotateY(720deg); } }
@media (prefers-reduced-motion: reduce) {
  .x13-gm *, .x13-gm-r * { animation: none !important; transition: none !important; }
}
@media (max-width: 1000px) and (min-width: 701px) {
  .x13-gm-4col { grid-template-columns: repeat(3,1fr) !important; }
  .x13-gm-4col > * { border-right: none !important; padding-left: 0 !important; padding-right: 12px !important; }
}
@media (max-width: 900px) {
  .x13-gm-3col { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 640px) {
  .x13-gm-2col { grid-template-columns: 1fr !important; }
  .x13-gm-3col { grid-template-columns: 1fr !important; }
  .x13-gm-h1 { font-size: 40px !important; }
  .x13-gm-hero-coin { width: 74px !important; height: 74px !important; }
  .x13-gm-subtag { display: none !important; }
}

/* ======================================================================
   Slide Your Article.dc.html / Mobile Find.dc.html
   ====================================================================== */
.x13-sya a { color: #1a3d74; }
.x13-sya a:hover { color: #0f2749; }
.x13-sya-m a { color: #c33d29; text-decoration: none; }
.x13-sya-m a:hover { color: #8f2a1a; }
.x13-sya input[type=range] { -webkit-appearance: none; appearance: none; background: transparent; }
.x13-sya input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; background: transparent; }
.x13-sya input[type=range]::-moz-range-thumb { width: 26px; height: 26px; background: transparent; border: 0; }
.x13-sya .x13-sya-red:hover { background: #a83424 !important; color: #fff !important; }
.x13-sya-x:hover { color: #c33d29 !important; background: #f6f7fa !important; }
.x13-sya-chip:hover { border-color: #1a3d74 !important; color: #16233a !important; }
.x13-sya .x13-sya-link:hover { background: rgba(22,50,89,.035) !important; }
.x13-sya-next-card:hover { border-color: #1a3d74 !important; }
.x13-sya-live { display: none !important; }
@media (max-width: 1080px) {
  .x13-sya-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .x13-sya-board { position: static !important; max-height: none !important; overflow: visible !important; }
  .x13-sya-res { padding-top: 0 !important; }
  .x13-sya-live { display: flex !important; }
  .x13-sya-live[hidden] { display: none !important; }
}
@media (max-width: 900px) {
  .x13-sya-hero-row { flex-direction: column !important; align-items: flex-start !important; gap: 30px !important; }
}
@media (max-width: 720px) {
  .x13-sya-h1 { font-size: 34px !important; }
  .x13-sya-hero-row > div:last-child { width: 100% !important; }
  .x13-sya-next { grid-template-columns: 1fr !important; }
}

/* ======================================================================
   Article.dc.html / Mobile Article.dc.html
   ====================================================================== */
.single-post .x13-article { background: #f6f7fa; }
.single-post .aj-article-mobile-back,
.single-post .aj-rating-chip--mobile,
.single-post .aj-read-time-short,
.single-post .aj-verified-short,
.single-post .aj-rc-mobile-score,
.single-post .aj-rc-question-title small,
.single-post .aj-other-side-open,
.single-post .aj-other-side-mobile-foot { display: none; }
.single-post .aj-rating-chip--desktop { display: inline-flex; }
.single-post .aj-article-meta-row {
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  margin-top: 18px;
  padding: 11px 0;
  border-top: 1px solid #e4e8ef;
  border-bottom: 1px solid #e4e8ef;
}
.single-post .aj-article-meta-left { justify-content: space-between; }
.single-post .aj-share-pair-inline {
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  margin-left: 0;
  border-color: rgba(26,58,107,.16);
  box-shadow: 0 2px 8px -3px rgba(20,41,75,.22);
}
.single-post .aj-share-pair-inline .aj-rating-chip {
  min-height: 34px;
  border: 0;
  box-shadow: none;
}
.single-post .aj-inline-save {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  border-radius: 19px;
  border-color: rgba(26,58,107,.22);
  color: #1a3d74;
  padding: 0 14px 0 12px;
  font: 600 9.5px/1 "IBM Plex Mono", ui-monospace, monospace;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.single-post .aj-inline-save[aria-pressed="true"] {
  color: #87651f;
  background: rgba(220,179,82,.16);
  border-color: rgba(143,107,33,.4);
}
.single-post .aj-share-pair-badge {
  min-height: 34px;
  padding: 0 2px 0 10px;
  border-radius: 19px;
  background: transparent;
  cursor: pointer;
}
.single-post .aj-share-pair-icon { color: #87651f; }
.single-post .aj-share-pair-svg,
.single-post .aj-other-side-svg { display: none; }
.single-post .aj-share-pair-label { color: #3f5c86; }
.single-post .aj-share-pair-sep { display: none; }
.single-post .aj-share-pair-targets { margin-left: auto; }
.single-post .aj-other-side-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.single-post .aj-other-side-card-link:hover { color: inherit; }
.single-post .aj-other-side-mobile-foot button { cursor: pointer; }
/* The meter rail is sticky, but its column only grew as tall as the rail, so it had
   nowhere to travel and scrolled away. Stretching the column to the row lets it dock. */
@media (min-width: 981px) {
  .single-post .aj-article-side-col { align-self: stretch; }
  /* Same for the pair card beside Review Corner. It docks when Review Corner is the longer
     column; when the card is the longer one there is nothing for it to travel past. */
  .single-post .aj-article-other-side-col { align-self: stretch; }
}
/* reset.css and the .x13 reset strip list markers; article lists (references) keep theirs. */
.single-post .aj-article-content ul { list-style: disc outside; }
.single-post .aj-article-content ol { list-style: decimal outside; }
/* Text styles that did not match Article.dc.html (measured 17 September). The meter rail,
   its white review foot included, is set in Plex Mono; the pair card and review list in Plex Sans. */
.single-post .aj-article-title { letter-spacing: normal; }
.single-post .aj-bias-dims-sub,
.single-post .aj-rc-item-label,
.single-post .aj-rc-item-verdict,
.single-post .aj-bias-rc-jump-btn { font-family: "IBM Plex Mono", ui-monospace, monospace; }
.single-post .aj-other-side-lean-text,
.single-post .aj-rc-upvote-label { font-family: "IBM Plex Sans", sans-serif; }
.single-post .aj-rebuttal-btn { font-size: 12.5px; }
/* Slide to your next read, desktop (Article.dc.html). One slider on the piece's heaviest theme
   (11slideyourarticle.md section 6). The native range sits on top of the drawn track, invisible. */
.single-post .aj-mini-intro,
.single-post .aj-mini-phone-inline,
.single-post .aj-art-phone-inline,
.single-post .aj-rc-eyebrow-svg,
.single-post .aj-mini-score-tag,
.single-post .aj-mini-slider-tip,
.single-post .aj-mini-match-gap { display: none; }
.single-post .aj-mini-panel { margin-bottom: 4px; padding: 16px 16px 18px; border: 1px solid #d7e0ec; background: #f4f7fb; box-shadow: inset 0 0 0 1px #fff; }
.single-post .aj-mini-eyebrow { display: flex; align-items: center; gap: 8px; margin-bottom: 11px; color: #1a3d74; font: 800 9px/normal "IBM Plex Sans", sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.single-post .aj-mini-eyebrow > span { flex: none; width: 3px; height: 12px; background: #c33d29; }
.single-post .aj-mini-seg { position: relative; display: flex; margin-bottom: 16px; padding: 3px; border: 1px solid #d7e0ec; border-radius: 7px; background: #e9edf4; }
.single-post .aj-mini-seg-thumb { position: absolute; top: 3px; bottom: 3px; left: 3px; width: calc(50% - 3px); border-radius: 5px; background: #fff; box-shadow: 0 1px 5px -1px rgba(20,41,75,.4); transition: transform .25s cubic-bezier(.4,0,.2,1); }
.single-post .aj-mini-seg[data-lens="indic"] .aj-mini-seg-thumb { transform: translateX(100%); }
.single-post .aj-mini-seg button { position: relative; z-index: 1; display: flex; flex: 1; align-items: center; justify-content: center; min-height: 28px; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; color: #616a79; cursor: pointer; font: 800 9px/normal "IBM Plex Sans", sans-serif; letter-spacing: .08em; text-transform: uppercase; transition: color .25s; }
.single-post .aj-mini-seg button[aria-checked="true"] { color: #1a3d74; }
.single-post .aj-mini-slider { display: none; }
.single-post .aj-mini-slider.is-lit { display: block; }
.single-post .aj-mini-slider-head { display: flex; align-items: baseline; gap: 9px; margin-bottom: 7px; line-height: normal; }
.single-post .aj-mini-slider-name { color: #16233a; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.single-post .aj-mini-slider-rule { flex: none; align-self: center; width: 12px; height: 1px; background: #ccd3dd; }
.single-post .aj-mini-slider-you { font-size: 9px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; }
.single-post .aj-mini-slider-track { position: relative; display: flex; align-items: center; height: 24px; }
.single-post .aj-mini-slider-bar { position: absolute; left: 0; right: 0; height: 5px; pointer-events: none; }
.single-post .aj-mini-slider-center { position: absolute; left: 50%; top: 50%; width: 1px; height: 12px; background: #ccd3dd; transform: translate(-50%, -50%); pointer-events: none; }
.single-post .aj-mini-slider-bench { position: absolute; top: 50%; z-index: 1; width: 2px; height: 20px; background: #16233a; transform: translate(-50%, -50%); pointer-events: none; }
.single-post .aj-mini-slider-thumb { position: absolute; top: 50%; z-index: 1; box-sizing: border-box; width: 16px; height: 16px; border: 2px solid #6f7a8e; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(19,41,75,.22); transform: translate(-50%, -50%); pointer-events: none; }
.single-post .aj-mini-slider-tip { position: absolute; bottom: 36px; z-index: 4; padding: 4px 9px; border-radius: 5px; background: #16233a; box-shadow: 0 3px 8px rgba(19,41,75,.3); color: #fff; font: 600 9px/normal "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; transform: translateX(-50%); pointer-events: none; }
.single-post .aj-mini-slider-track input[type=range] { position: absolute; left: 0; right: 0; z-index: 2; width: 100%; height: 24px; margin: 0; padding: 0; border: 0; opacity: 0; cursor: pointer; }
.single-post .aj-mini-slider-track:focus-within .aj-mini-slider-thumb { outline: 2px solid #dcb352; outline-offset: 2px; }
.single-post .aj-mini-slider-poles { display: flex; justify-content: space-between; gap: 10px; margin-top: 4px; color: #5f697a; font: 600 9.5px/13px "IBM Plex Mono", ui-monospace, monospace; }
.single-post .aj-mini-slider-poles span:last-child { text-align: right; }
/* The cap sits under the poles, not between them: theme poles are longer than the artboard's Left/Right. */
.single-post .aj-mini-slider-cap { position: relative; height: 13px; margin-top: 4px; }
.single-post .aj-mini-slider-cap.is-inline { margin-top: -13px; }
.single-post .aj-mini-slider-cap > .aj-mini-slider-cap-text { position: absolute; top: 0; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; color: #16233a; cursor: pointer; font: 700 9px/13px "IBM Plex Sans", sans-serif; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.single-post .aj-mini-empty { margin: 0; color: #5f697a; font-size: 12px; line-height: 1.5; }
/* design-remediation.css gave the old result block 18px margins and Mono 10px spans. */
.single-post [data-mini-result] { margin: 0; }
.single-post .aj-mini-match-head span { font: inherit; letter-spacing: inherit; }
.single-post .aj-mini-match { display: block; margin-top: 20px; padding: 15px 16px; border: 1px solid #dfe3ea; background: #fbfcfd; color: #16233a; text-decoration: none; }
.single-post .aj-mini-match:hover { border-color: #1a3d74; color: #16233a; }
.single-post .aj-mini-match-head { margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid #eef1f6; color: #58616f; font: 800 9px/normal "IBM Plex Sans", sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.single-post .aj-mini-match-img { position: relative; height: 104px; margin-bottom: 12px; overflow: hidden; background: #e4e8ef center / cover no-repeat; }
.single-post .aj-mini-match-scrim { position: absolute; left: 0; right: 0; bottom: 0; height: 100%; max-height: 40px; background: linear-gradient(to top, rgba(16,26,42,.8), rgba(16,26,42,0)); }
.single-post .aj-mini-match-cat { margin-bottom: 6px; color: #c33d29; font: 800 9px/normal "IBM Plex Sans", sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.single-post .aj-mini-match-title { color: #16233a; font: 500 18px/1.24 "EB Garamond", Georgia, serif; text-wrap: pretty; }
.single-post .aj-mini-match-band { display: flex; align-items: center; gap: 7px; margin-top: 12px; }
.single-post .aj-mini-match-meter { position: relative; flex-shrink: 0; width: 68px; height: 4px; background: #e4e8ef; }
.single-post .aj-mini-match-meter i { position: absolute; top: 0; bottom: 0; }
.single-post .aj-mini-match-meter .aj-mini-match-tick { left: 50%; top: -3px; bottom: -3px; width: 1px; background: #ccd3dd; }
.single-post .aj-mini-match-meter .aj-mini-match-marker { top: -3px; bottom: -3px; width: 2px; background: #16233a; transform: translateX(-1px); }
.single-post .aj-mini-match-word { color: #5f697a; font: 600 10px/normal "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; }
.single-post .aj-mini-match-gap { margin-top: 9px; color: #5f697a; font: italic 400 14px/1.5 "EB Garamond", Georgia, serif; text-wrap: pretty; }
.single-post [data-mini-full] { display: inline-block; margin-top: 14px; color: #c33d29; font: 800 10.5px/normal "IBM Plex Sans", sans-serif; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.single-post [data-mini-full]:hover { color: #c33d29; text-decoration: underline; }
.single-post .aj-deeper-stat {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  color: #7b8496;
  font-size: 11px;
}
.single-post .aj-deeper-stat::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #5fb08c;
}

/* ---- Desktop frame pass against Article.dc.html (17 September), measured element by element ----
   The artboard's text sits at line-height: normal; the theme's 1.6 made every label box taller. */
@media (min-width: 681px) {
  /* Top: crumb, eyebrow, meta line and the share rail. */
  .single-post .aj-article-breadcrumb,
  .single-post .aj-article-eyebrow,
  .single-post .aj-article-meta-row,
  .single-post .aj-article-meta-row * { line-height: normal; }
  .single-post .aj-share-pair-inline .aj-rating-chip { gap: 6px; min-height: 34px; padding: 0 12px; border-radius: 19px; background: transparent; }
  .single-post .aj-share-pair-inline .aj-rating-chip:hover { background: #e6edf8; }
  .single-post .aj-share-pair-inline .aj-rating-chip-dots { gap: 6px; }
  /* Rating, Save and the share group are spread with space-between on the artboard. */
  .single-post .aj-inline-save { margin-left: auto; border-color: rgba(26,58,107,.2); }
  .single-post .aj-inline-save:hover { background: #e6edf8; }
  .single-post .aj-share-pair-badge { margin-left: auto; margin-right: 2px; }
  .single-post .aj-share-pair-inline .aj-share-pair-icon { line-height: 1; }
  .single-post .aj-share-pair-targets { margin-left: 0; padding: 0 4px; }
  .single-post .aj-share-pair-targets > :last-child { background: #fff; }
  /* Author card. */
  .single-post .aj-article-author-strip { border-color: #d9e0ec; }
  .single-post .aj-author-strip-avatar,
  .single-post .aj-author-strip-name,
  .single-post .aj-author-strip-verified,
  .single-post .aj-author-strip-perspectives,
  .single-post .aj-author-strip-more { line-height: normal; }
  /* Body: h2 at normal line height; links in the artboard's link colour. The underline is kept
     so a link in running text is not told apart by colour alone. */
  .single-post .aj-article-content h2 { line-height: normal; }
  .single-post .aj-article-content a { color: #c33d29; }
  .single-post .aj-article-content a:hover { color: #8f2a1a; }
  /* Meter rail: starts level with the crumb, docks at 72px (the header does not stick), 16px base,
     normal line height except where the artboard sets one. */
  .single-post .aj-article-side-col { padding-top: 0; }
  .single-post .aj-bias-rail { top: 72px; font-size: 16px; }
  .single-post .aj-bias-rail,
  .single-post .aj-bias-rail * { line-height: normal; }
  .single-post .aj-bias-rail .aj-lens-name { line-height: 1.2; }
  .single-post .aj-bias-rail .aj-bias-verdict-text { line-height: 1; }
  .single-post .aj-bias-rail .aj-bias-breakdown-text,
  .single-post .aj-bias-rail .aj-bias-method-foot { line-height: 1.5; }
  .single-post .aj-rc-item-coin { width: 18px; height: 18px; }
  .single-post .aj-bias-rail .aj-pole-bar { width: 26px; }
  /* The self-hosted Plex Mono 400 has taller line metrics than the artboard's copy: pin the artboard's 11px lines. */
  .single-post .aj-bias-rail .aj-bias-dims-sub { line-height: 11px; }
  .single-post .aj-bias-rail .aj-bias-lens-view { padding-bottom: 18px; }
  /* The band word line keeps its 13px when the payload sends no word for a theme. */
  .single-post .aj-bias-dim-bottom { min-height: 13px; }
  /* Review Corner: normal line height except where the artboard sets one. */
  .single-post .aj-rc-card,
  .single-post .aj-rc-card * { line-height: normal; }
  .single-post .aj-rc-title,
  .single-post .aj-rc-title * { line-height: 1.3; }
  .single-post .aj-rc-question-title,
  .single-post .aj-rc-question-title * { line-height: 1.25; }
  .single-post .aj-rc-review-quote { line-height: 1.65; }
  .single-post .aj-rc-login-notice .aj-rc-notice-text { line-height: 1.5; }
  .single-post .aj-rc-coin-wrap,
  .single-post .aj-rc-coin-wrap img { width: 12px; height: 12px; }
  .single-post .aj-rc-review-sub { margin-top: 0; }
  /* A review already Theeled when the page loads shows the artboard's on state, not only after a click. */
  .single-post .aj-rc-upvote-btn[aria-pressed="true"] { border-color: #dcb352; background: #fdf7e8; }
  .single-post .aj-rc-upvote-btn[aria-pressed="true"] .aj-rc-upvote-label { color: #8a6a17; }
  /* Pair card (red half): normal line height; band word and mini meter share one row, 10px apart. */
  .single-post .aj-other-side-card,
  .single-post .aj-other-side-card * { line-height: normal; }
  .single-post .aj-other-side-title { line-height: 1.24; }
  .single-post .aj-other-side-dek { line-height: 1.5; }
  .single-post .aj-other-side-note { line-height: 1.5; }
  .single-post .aj-other-side-card-link > [data-lens-text]:not([hidden]) { display: flex; align-items: center; gap: 10px; }
  .single-post .aj-other-side-lean-text { white-space: nowrap; }
  .single-post .aj-other-side-bar { flex: none; }
  .single-post .aj-other-side-img-tag { font-size: 16px; }
  /* Rebuttal and Go deeper bands. */
  .single-post .aj-rebuttal-cta-card,
  .single-post .aj-rebuttal-cta-card *,
  .single-post .aj-go-deeper-card,
  .single-post .aj-go-deeper-card * { line-height: normal; }
  .single-post .aj-rebuttal-title { line-height: 1.22; }
  .single-post .aj-rebuttal-desc,
  .single-post .aj-deeper-desc { line-height: 1.6; }
  .single-post .aj-deeper-title { line-height: 1.25; }
  .single-post .aj-rebuttal-btn { padding: 13px 26px; }
  .single-post .aj-rebuttal-btn,
  .single-post .aj-deeper-col a { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; }
  .single-post .aj-deeper-stat { display: flex; min-height: 20px; }
  .single-post .aj-deeper-col:not(.aj-deeper-col--meter) a { padding: 12px 24px; border: 1.5px solid #2c3f5c; background: transparent; }
  .single-post .aj-deeper-col:not(.aj-deeper-col--meter) a:hover { background: rgba(44,63,92,.07); }
}

@media (max-width: 680px) {
  .single-post .x13-article { background: #fff; }
  .single-post .aj-article-entry { padding-bottom: 92px; }
  .single-post .aj-article-grid {
    display: block !important;
    margin: 0;
    padding: 14px 18px 0;
  }
  .single-post .aj-article-main-col { max-width: none; }
  .single-post .aj-article-mobile-back {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: #616a78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;
  }
  .single-post .aj-article-breadcrumb { display: none; }
  .single-post .aj-article-eyebrow { margin-top: 2px; font-size: 10px; }
  .single-post .aj-article-title {
    margin: 10px 0 0;
    color: #1a3d74;
    font-size: 30px;
    line-height: 1.15;
  }
  .single-post .aj-article-dek {
    margin-top: 13px;
    font-size: 16.5px;
    line-height: 1.5;
  }
  .single-post .aj-article-meta-row {
    display: flex;
    gap: 0;
    margin-top: 15px;
    padding: 0;
    border: 0;
  }
  .single-post .aj-article-meta-left {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
  }
  .single-post .aj-meta-date-reads { font-size: 12px; }
  .single-post .aj-read-time-long { display: none; }
  .single-post .aj-read-time-short { display: inline; }
  .single-post .aj-rating-chip--mobile {
    display: inline-flex;
    padding: 3px 8px;
  }
  .single-post .aj-rating-chip--mobile .aj-rating-chip-coin { width: 13px; height: 13px; }
  .single-post .aj-rating-chip--desktop { display: none; }
  .single-post .aj-share-pair-inline {
    display: flex;
    align-items: stretch;
    gap: 8px;
    min-height: 48px;
    margin-top: 18px;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .single-post .aj-inline-save {
    justify-content: center;
    gap: 6px;
    min-width: 0;
    min-height: 44px;
    padding: 0 14px;
    border-radius: 22px;
  }
  /* Mobile Share Pair.dc.html, bar variant: a light pill with the share arrow and a navy label. */
  .single-post .aj-share-pair-badge {
    flex: 1;
    min-width: 0;
    min-height: 48px;
    box-sizing: border-box;
    justify-content: center;
    gap: 9px;
    padding: 0 14px;
    border: 1px solid rgba(26,58,107,.2);
    border-radius: 24px;
    background: #eef3fa;
    cursor: pointer;
  }
  .single-post .aj-share-pair-badge:hover { background: #eef3fa; }
  .single-post .aj-share-pair-icon { display: none; }
  .single-post .aj-share-pair-svg { display: block; flex-shrink: 0; }
  .single-post .aj-share-pair-label { color: #1a3d74; }
  .single-post .aj-share-pair-targets,
  .single-post .aj-article-share-status { display: none; }
  .single-post .aj-article-hero-wrap {
    height: 200px;
    aspect-ratio: auto;
    margin-top: 22px;
  }
  .single-post .aj-article-author-strip {
    position: relative;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
    padding: 14px 38px 14px 16px;
  }
  .single-post .aj-article-author-strip::after {
    content: "→";
    position: absolute;
    right: 15px;
    color: #626e81;
    font-size: 14px;
  }
  .single-post .aj-author-strip-avatar { width: 44px; height: 44px; font-size: 18px; }
  .single-post .aj-author-strip-name { font-size: 18px; }
  .single-post .aj-author-strip-verified { padding: 3px 7px; font-size: 8.5px; }
  .single-post .aj-verified-long { display: none; }
  .single-post .aj-verified-short { display: inline; }
  .single-post .aj-author-strip-perspectives { margin-top: 3px; font-size: 11.5px; }
  .single-post .aj-author-strip-bio,
  .single-post .aj-author-strip-more { display: none; }
  .single-post .aj-article-content { margin-top: 32px; }
  .single-post .aj-article-content,
  .single-post .aj-article-content p { color: #2b2f37; font-size: 19px; line-height: 1.7; }
  .single-post .aj-article-content p { margin-bottom: 20px; }
  .single-post .aj-article-content > p:first-of-type:not(.has-text-align-center)::first-letter {
    font-size: 56px;
    margin: 6px 10px 0 0;
  }
  .single-post .aj-article-content h2 { margin: 34px 0 16px; font-size: 24px; }
  .single-post .aj-article-content blockquote {
    margin: 26px 0;
    padding: 5px 0 5px 18px;
    font-size: 21px;
  }
  .single-post .aj-paywall-gate { margin-top: 6px; }
  .single-post .aj-paywall-card {
    padding: 24px 20px;
    border-top: 3px solid #1a3d74;
    border-radius: 12px;
  }
  .single-post .aj-paywall-title { font-size: 21px; }
  .single-post .aj-paywall-desc { margin-top: 8px; font-size: 12.5px; }
  .single-post .aj-paywall-btn-signin { display: flex; min-height: 46px; justify-content: center; }

  /* Reorder the three mobile sections without duplicating their live data. */
  .single-post .aj-article-rc-row {
    display: flex !important;
    flex-direction: column;
    gap: 0 !important;
    margin: 0;
    padding: 0 18px;
  }
  .single-post .aj-article-other-side-col,
  .single-post .aj-other-side-rail { display: contents; }
  .single-post .aj-other-side-card { order: 0; }
  .single-post .aj-article-rc-col { order: 1; }
  .single-post .aj-next-read-widget { order: 2; }
  .single-post .aj-other-side-card {
    width: 100%;
    box-sizing: border-box;
    margin-top: 36px;
    padding: 16px 16px 18px;
    overflow: hidden;
    border: 1px solid #dfe3ea;
    border-left: 3px solid #c33d29;
    border-radius: 10px;
    background: #faf8f5;
    color: #1c3255;
    box-shadow: none;
  }
  .single-post .aj-other-side-card:hover { background: #faf8f5; }
  .single-post .aj-other-side-header {
    margin: 0;
    padding: 0;
    border: 0;
  }
  .single-post .aj-other-side-icon { width: auto; height: auto; background: transparent; color: #c33d29; }
  .single-post .aj-other-side-eyebrow { color: #c33d29; font-size: 10px; }
  .single-post .aj-other-side-from,
  .single-post .aj-other-side-image-wrap,
  .single-post .aj-other-side-note,
  .single-post .aj-other-side-bar { display: none; }
  .single-post .aj-other-side-title { margin: 8px 0 0; color: #1c3255; font-size: 20px; }
  .single-post .aj-other-side-dek { margin: 8px 0 0; color: #616a78; font-size: 11.5px; }
  .single-post .aj-other-side-card-link > [data-lens-text] {
    align-self: flex-end;
    margin-top: -18px;
  }
  .single-post .aj-other-side-card-link { display: flex; flex-direction: column; }
  .single-post .aj-other-side-lean-text { color: #3f5c86; font-size: 9.5px; }
  .single-post .aj-other-side-open {
    display: flex;
    height: 44px;
    align-items: center;
    justify-content: center;
    margin-top: 14px;
    border: 1.5px solid #c33d29;
    border-radius: 6px;
    color: #c33d29;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .single-post .aj-other-side-mobile-foot {
    display: flex;
    min-height: 44px;
    align-items: center;
    gap: 10px;
    margin: 6px -16px -18px;
    padding: 0 16px;
    border-top: 1px solid #e8e2d8;
  }
  .single-post .aj-other-side-lens-note {
    min-width: 0;
    color: #5e6a7c;
    font: 600 8.5px/1.3 "IBM Plex Mono", ui-monospace, monospace;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .single-post .aj-other-side-mobile-foot button {
    min-height: 44px;
    margin-left: auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: #c33d29;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .single-post .aj-review-corner { margin-top: 34px; border-top: 3px solid #1a3d74; padding-top: 18px; }
  .single-post .aj-rc-card { padding: 0; border: 0; border-radius: 0; box-shadow: none; }
  .single-post .aj-rc-eyebrow { margin: 0; color: #1a3d74; }
  .single-post .aj-rc-mobile-score { display: flex; align-items: baseline; gap: 8px; margin-top: 6px; }
  .single-post .aj-rc-mobile-score strong { color: #1a3d74; font: 500 32px/1 "EB Garamond", Georgia, serif; }
  .single-post .aj-rc-mobile-score span { color: #616a78; font-size: 11.5px; }
  .single-post .aj-rc-header {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0 10px;
    margin: 14px 0 0;
    padding: 15px 16px 0;
    border: 1px solid #dfe3ea;
    border-bottom: 0;
    border-radius: 12px 12px 0 0;
  }
  .single-post .aj-rc-title { min-width: 0; font-size: 17px; }
  .single-post .aj-rc-title .x13-phone-only { display: inline !important; }
  .single-post .aj-rc-reward-text .x13-phone-only { display: inline !important; }
  /* Not on the artboard: the guide's nomination, on its own row so the heading keeps its width. */
  .single-post .aj-rc-header .aj-feature-text-button {
    flex: 0 0 100%;
    min-height: 44px;
    margin: 2px 0 -8px;
    text-align: left;
    color: #1a3d74;
    font: 600 12px/1.3 "IBM Plex Sans", sans-serif;
  }
  .single-post .aj-rc-reward-badge {
    margin: 0;
    font: 600 9px/1 "IBM Plex Mono", ui-monospace, monospace;
    letter-spacing: .06em;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .single-post .aj-rc-form {
    padding: 13px 16px 15px;
    border: 1px solid #dfe3ea;
    border-top: 0;
    border-radius: 0 0 12px 12px;
  }
  .single-post .aj-rc-grid { display: grid; grid-template-columns: 1fr; gap: 13px; }
  .single-post .aj-rc-question-title {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
    padding: 0;
    border: 0;
    color: #4a5361;
    font: 700 11.5px/1.3 "IBM Plex Sans", sans-serif;
  }
  .single-post .aj-rc-question-title small {
    display: inline;
    color: #58616f;
    font: 600 9px/1 "IBM Plex Mono", ui-monospace, monospace;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .single-post .aj-rc-options-list { flex-direction: row; gap: 2px; margin-top: 3px; }
  .single-post .aj-rc-option-label {
    width: 44px;
    height: 44px;
    justify-content: center;
    box-sizing: border-box;
    padding: 0;
    background: transparent !important;
  }
  .single-post .aj-rc-radio-custom { width: 26px; height: 26px; border: 0; background: transparent; }
  .single-post .aj-rc-radio-icon { width: 26px; height: 26px; opacity: .2; transform: none; }
  .single-post .aj-rc-option-label.is-filled .aj-rc-radio-icon { opacity: 1; }
  .single-post .aj-rc-option-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .single-post .aj-rc-submit-wrap { margin-top: 16px; }
  .single-post .aj-rc-submit-btn { min-height: 48px; padding: 0 12px; font-size: 11.5px; }
  .single-post .aj-rc-login-notice { padding: 10px 12px; }
  .single-post .aj-rc-summary-section { margin-top: 14px; }
  .single-post .aj-rc-summary-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
  .single-post .aj-rc-summary-card { padding: 12px 5px; }
  .single-post .aj-rc-card-score { font-size: 25px; }
  .single-post .aj-rc-card-dots { display: none; }
  .single-post .aj-rc-divider { display: none; }
  .single-post .aj-rc-reviews-section { margin-top: 22px; }
  .single-post .aj-rc-reviews-header { margin-bottom: 0; }
  .single-post .aj-rc-reviews-title { font-size: 18px; }
  .single-post .aj-rc-reviews-count { font-size: 10.5px; }
  .single-post .aj-rc-review-item { padding: 14px 0; }
  .single-post .aj-rc-review-author-row { gap: 9px; margin-bottom: 9px; }
  .single-post .aj-rc-review-avatar { width: 30px; height: 30px; font-size: 12px; }
  .single-post .aj-rc-review-author-name { font-size: 12px; }
  .single-post .aj-rc-review-date { font-size: 10px; }
  .single-post .aj-rc-review-quote {
    padding: 0;
    border: 0;
    color: #4a5361;
    font: 400 12.5px/1.6 "IBM Plex Sans", sans-serif;
  }
  .single-post .aj-rc-review-actions { margin-top: 7px; padding: 0; }
  .single-post .aj-rc-upvote-btn { min-height: 44px; }
  .single-post .aj-rc-auth-foot { margin-top: 12px; font-size: 11px; }

  .single-post .aj-next-read-widget {
    width: 100%;
    box-sizing: border-box;
    margin-top: 32px;
    padding: 15px 15px 17px;
    border: 1px solid #d7e0ec;
    border-radius: 12px;
    background: #f4f7fb;
    box-shadow: inset 0 1px 0 #fff;
  }
  .single-post .aj-next-read-title {
    margin: 0;
    padding: 0;
    border: 0;
    color: #c33d29;
    font-size: 22px;
  }
  .single-post .aj-next-read-title::before {
    content: "Slide to set your position";
    display: block;
    margin-bottom: 9px;
    padding-left: 8px;
    border-left: 3px solid #c33d29;
    color: #1a3d74;
    font: 800 9px/13px "IBM Plex Sans", sans-serif;
    letter-spacing: .13em;
    text-transform: uppercase;
  }
  /* Mobile Article.dc.html "Slide to your next read": intro line, a row per lens (the scored one lit),
     44px targets, 8px track, 28px thumb, match card with the gap note, "Slide all five themes". */
  .single-post .aj-next-read-title { line-height: 1.2; }
  .single-post .aj-mini-intro { display: block; margin: 6px 0 0; color: #5f697a; font-size: 12px; line-height: 1.55; }
  .single-post .aj-mini-panel { margin: 8px 0 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
  .single-post .aj-mini-eyebrow,
  .single-post .aj-mini-seg,
  .single-post .aj-mini-slider-rule,
  .single-post .aj-mini-slider-cap-band,
  .single-post .aj-mini-desk-inline,
  .single-post .aj-art-desk-inline { display: none; }
  .single-post .aj-mini-phone-inline,
  .single-post .aj-art-phone-inline { display: inline; }
  .single-post .aj-mini-slider,
  .single-post .aj-mini-slider:not(.is-lit) { display: block; padding: 11px 0 3px; border-bottom: 1px solid #e4eaf4; transition: opacity .2s; }
  .single-post .aj-mini-slider:not(.is-lit) { opacity: .62; }
  .single-post .aj-mini-slider-head { align-items: center; gap: 8px; min-height: 44px; margin: 0; }
  .single-post .aj-mini-slider-name { font-size: 10.5px; letter-spacing: .07em; }
  .single-post .aj-mini-score-tag { display: inline-flex; align-items: center; flex-shrink: 0; height: 44px; padding: 0; border: 0; background: transparent; cursor: pointer; }
  .single-post .aj-mini-score-pill { display: inline-flex; align-items: center; height: 22px; box-sizing: border-box; padding: 0 9px; border: 1px solid #ccd3dd; border-radius: 11px; background: #fff; color: #5f697a; font: 800 8px/1 "IBM Plex Sans", sans-serif; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; transition: background .2s, color .2s, border-color .2s; }
  .single-post .aj-mini-slider.is-lit .aj-mini-score-pill { border-color: #1a3d74; background: #1a3d74; color: #fff; }
  .single-post .aj-mini-slider-you { margin-left: auto; font: 600 9.5px/1 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .04em; }
  .single-post .aj-mini-slider-track,
  .single-post .aj-mini-slider-track input[type=range] { height: 44px; }
  .single-post .aj-mini-slider-track input[type=range] { z-index: 3; }
  .single-post .aj-mini-slider-bar { height: 8px; border-radius: 4px; box-shadow: inset 0 1px 2px rgba(19,41,75,.14); }
  .single-post .aj-mini-slider-center { height: 16px; }
  .single-post .aj-mini-slider-bench { height: 24px; }
  .single-post .aj-mini-slider-thumb { z-index: 2; width: 28px; height: 28px; box-shadow: 0 2px 6px rgba(19,41,75,.22); transition: border-color .25s, box-shadow .15s; }
  .single-post .aj-mini-slider-track.is-dragging .aj-mini-slider-thumb { transform: translate(-50%, -50%) scale(1.2); box-shadow: 0 3px 8px rgba(19,41,75,.3), 0 0 0 7px rgba(26,61,116,.13); }
  .single-post .aj-mini-slider-track.is-dragging .aj-mini-slider-tip { display: block; }
  .single-post .aj-mini-slider-poles { margin-top: 0; line-height: 14px; }
  .single-post .aj-mini-slider-cap { height: 14px; margin-top: 4px; }
  .single-post .aj-mini-slider-cap.is-inline { margin-top: -14px; }
  .single-post .aj-mini-slider-you { line-height: normal; }
  /* "This piece · <band>" snaps the slider back, so it is a control and needs
     44px (Part 2.5). It is absolutely positioned and JS sets its left, so the
     hit area grows around the text rather than the row: 44px centred on the
     14px line clears the pole words above and stops short of the next slider. */
  .single-post .aj-mini-slider-cap > .aj-mini-slider-cap-text { border-bottom: 1px dotted #9aa3ad; line-height: 13px; top: -15px; height: 44px; display: inline-flex; align-items: center; }
  .single-post .aj-mini-match { margin-top: 16px; padding: 13px 13px 15px; border-radius: 8px; background: #fff; }
  .single-post .aj-mini-match-head { margin: 0; padding-bottom: 9px; }
  .single-post .aj-mini-match-img { height: 88px; margin: 11px 0 0; }
  .single-post .aj-mini-match-scrim { padding: 18px 9px 6px; }
  .single-post .aj-mini-match-cat { margin: 11px 0 0; }
  .single-post .aj-mini-match-title { margin-top: 5px; line-height: 1.26; }
  .single-post .aj-mini-match-band { gap: 8px; margin-top: 11px; }
  .single-post .aj-mini-match-meter { width: 60px; }
  .single-post .aj-mini-match-word { font-size: 9.5px; }
  .single-post .aj-mini-match-gap { display: block; }
  .single-post [data-mini-result] .aj-btn-outline { width: 100%; min-height: 44px; margin-top: 14px; }
  .single-post [data-mini-full] { display: flex; height: 44px; align-items: center; justify-content: center; margin-top: 12px; }

  .single-post.logged-in .aj-mobile-bias-dock { padding-right: 14px; }
  .single-post.logged-in .aj-mobile-bias-dock-action { display: flex; }
  .single-post .aj-mobile-bias-dock {
    bottom: calc(64px + env(safe-area-inset-bottom));
    min-height: 58px;
    padding: 11px 14px;
    border-radius: 12px;
  }
  .single-post .aj-mobile-bias-dock-logo { width: 26px; height: 26px; flex-basis: 26px; }
  .single-post .aj-mobile-bias-dock-logo img { width: 21px; height: 21px; }
  .single-post .aj-mobile-bias-dock-copy { gap: 2px; }
  .single-post .aj-mobile-bias-dock-copy small { order: 0; margin: 0; font-size: 8.5px; }
  .single-post .aj-mobile-bias-dock-copy strong {
    order: 1;
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 16px;
    line-height: 1;
  }
  .single-post .aj-mobile-bias-dock-copy strong i { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; }
  /* The display rules above would otherwise show the other lens's verdict and gauge as well. */
  .single-post .aj-mobile-bias-dock [hidden] { display: none !important; }
  .single-post .aj-mobile-bias-dock-gauge {
    position: relative;
    width: 74px;
    height: 5px;
    flex: 0 0 74px;
    border-radius: 3px;
    background: rgba(255,255,255,.14);
  }
  .single-post .aj-mobile-bias-dock-gauge i { position: absolute; left: 50%; top: -3px; bottom: -3px; width: 1px; background: rgba(255,255,255,.4); }
  .single-post .aj-mobile-bias-dock-gauge b { position: absolute; top: 50%; width: 4px; height: 13px; transform: translate(-50%,-50%); border: 1.5px solid #fff; border-radius: 2px; }
  .single-post .aj-mobile-bias-dock-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    color: rgba(255,255,255,.65);
    font-size: 7.5px;
  }
  .single-post .aj-mobile-bias-dock-action > span { font-size: 11px; }
  .single-post .aj-article-rebuttal-band,
  .single-post .aj-article-go-deeper-band { display: none; }

  /* Text styles that did not match Mobile Article.dc.html and Mobile Share Pair.dc.html (measured 17 September). */
  .single-post .aj-rating-chip--mobile .aj-rating-chip-score { font-size: 11px; }
  .single-post .aj-share-pair-label { font: 800 11.5px/1 "IBM Plex Sans", sans-serif; letter-spacing: .07em; }
  .single-post .aj-perspectives-count { font-size: 11.5px; }
  .single-post .aj-other-side-lean-text { font-family: "IBM Plex Mono", ui-monospace, monospace; font-weight: 600; letter-spacing: .05em; }
  .single-post .aj-other-side-mobile-foot button { letter-spacing: .08em; }
  .single-post .aj-rc-eyebrow { letter-spacing: .14em; }
  .single-post .aj-rc-title { color: #1c3255; font-weight: 400; }
  .single-post .aj-rc-reward-text { color: #1a7a4a; }
  .single-post .aj-rc-reviews-count { color: #58616f; font-weight: 400; }
  .single-post .aj-rc-review-author-name { color: #16233a; }
  .single-post .aj-rc-upvote-label { font: 600 10px/1 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: normal; text-transform: none; }
  /* The dock sits outside the sheet, so it is Plex Sans; the sheet itself is Plex Mono on the artboard. */
  .single-post .aj-mobile-bias-dock-copy small { font-family: "IBM Plex Sans", sans-serif; font-weight: 800; letter-spacing: .12em; line-height: normal; }
  .single-post .aj-mobile-bias-dock { min-height: 0; gap: 11px; border: 0; box-shadow: 0 12px 30px -12px rgba(19,41,75,.65); }
  .single-post .aj-mobile-bias-dock-action { line-height: normal; }
  .single-post .aj-mobile-bias-dock-action > span { line-height: 1; }
  .single-post .aj-mobile-bias-dock-copy strong { font-weight: 500; }
  .single-post .aj-mobile-bias-dock-action { letter-spacing: .09em; }
  .single-post .aj-bias-rail .aj-lens-name { font-size: 11px; }
  .single-post .aj-bias-rail .aj-pole-label { font-size: 8px; }

  /* ---- Phone frame pass against Mobile Article.dc.html (17 September), measured element by element ---- */
  /* Top: eyebrow, meta line, rating chip, Save. */
  .single-post .aj-article-mobile-back,
  .single-post .aj-article-eyebrow,
  .single-post .aj-article-meta-row,
  .single-post .aj-article-meta-row * { line-height: normal; }
  .single-post .aj-meta-date-reads { letter-spacing: normal; }
  .single-post .aj-rating-chip--mobile,
  .single-post .aj-rating-chip--mobile .aj-rating-chip-dots { gap: 5px; }
  .single-post .aj-inline-save { border-color: rgba(26,58,107,.2); }
  .single-post .aj-share-pair-inline .aj-share-pair-icon { line-height: 1; }
  /* Author card: the arrow is a 14px column 12px from the text, inside 16px padding. */
  .single-post .aj-article-author-strip { padding-right: 42px; border-color: #d9e0ec; }
  .single-post .aj-article-author-strip::after { right: 16px; }
  .single-post .aj-author-strip-header { gap: 7px; }
  .single-post .aj-author-strip-avatar,
  .single-post .aj-author-strip-name,
  .single-post .aj-author-strip-verified,
  .single-post .aj-author-strip-perspectives { line-height: normal; }
  /* The other side card: stroke icon eyebrow, byline and band word on one row, band word in its stance colour. */
  .single-post .aj-other-side-header { display: block; line-height: normal; font-size: 10px; }
  .single-post .aj-other-side-header .aj-other-side-icon { display: none; }
  .single-post .aj-other-side-svg { display: inline-block; margin-right: 7px; vertical-align: -2px; }
  .single-post .aj-other-side-title { line-height: 1.25; }
  .single-post .aj-other-side-dek { line-height: normal; }
  .single-post .aj-other-side-card-link > [data-lens-text] { margin-top: -14px; }
  .single-post .aj-other-side-lean-text { color: var(--aj-band-color, #3f5c86); line-height: normal; }
  .single-post .aj-other-side-open { line-height: normal; }
  .single-post .aj-other-side-lens-note { line-height: 1.3; }
  .single-post .aj-other-side-card-link > [data-lens-text] { display: flex; align-items: center; min-height: 15px; margin-top: -15px; }
  .single-post .aj-other-side-card-link > [data-lens-text][hidden] { display: none; }
  /* Review Corner: star eyebrow, grey submit until complete, review rows with the ▲ chip beside the name. */
  .single-post .aj-rc-eyebrow { line-height: normal; letter-spacing: .14em; }
  .single-post .aj-rc-eyebrow-svg { display: inline-block; margin-right: 7px; vertical-align: -2px; }
  .single-post .aj-rc-mobile-score span { line-height: normal; }
  .single-post .aj-rc-submit-btn:disabled,
  .single-post .aj-rc-submit-btn.is-locked { background: #8f96a4; opacity: 1; }
  .single-post .aj-rc-submit-btn.is-ready { background: #c33d29; }
  .single-post .aj-rc-submit-btn { line-height: normal; }
  .single-post .aj-rc-reviews-header,
  .single-post .aj-rc-reviews-header * { line-height: normal; }
  .single-post .aj-rc-review-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 9px; align-items: center; }
  .single-post .aj-rc-review-author-row { grid-column: 1; grid-row: 1; margin: 0; }
  .single-post .aj-rc-review-actions { grid-column: 2; grid-row: 1; margin: 0; }
  .single-post .aj-rc-review-quote { grid-column: 1 / -1; grid-row: 2; margin-top: 9px; }
  .single-post .aj-rc-review-author-meta { display: flex; flex-direction: column; gap: 2px; }
  .single-post .aj-rc-review-author-meta * { line-height: normal; }
  .single-post .aj-rc-review-sub { margin-top: 0; }
  .single-post .aj-rc-upvote-btn { gap: 5px; height: 44px; min-height: 44px; padding: 0 11px; border: 1px solid #d9e0ec; background: #fff; }
  .single-post .aj-rc-upvote-btn[aria-pressed="true"] { border-color: #1a3d74; background: #eef3fa; }
  .single-post .aj-rc-upvote-btn[aria-pressed="true"] .aj-rc-upvote-label { color: #1a3d74; }
  .single-post .aj-rc-upvote-coin { display: none; }
}

/* ======================================================================
   Bias Meter Page.dc.html · Mobile Bias Meter.dc.html
   ====================================================================== */
@keyframes bmShimmer { 0% { opacity: .55; } 50% { opacity: 1; } 100% { opacity: .55; } }
@keyframes bmSpin { to { transform: rotate(360deg); } }
@keyframes bmPromoIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes bmResultIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes bmPulse { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }
@keyframes bmSheetUp { from { transform: translateY(16px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.x13-bm .x13-bm-reveal { animation: bmResultIn .35s cubic-bezier(.22,1,.36,1) both; }
.x13-bm input::placeholder { color: #636f83; }
.x13-bm input[type="url"], .x13-bm input[type="url"]:focus { box-shadow: none; }
.x13-bm .x13-bm-run:not(:disabled):hover { background: #a83424 !important; }
.x13-bm .x13-bm-red:hover { background: #a83424 !important; color: #fff !important; }
.x13-bm .x13-bm-signin:hover { background: #a83424 !important; color: #fff !important; }
.x13-bm .x13-bm-copy:hover { background: #a83424 !important; }
.x13-bm .x13-bm-retry:hover { background: rgba(255,255,255,.1) !important; }
.x13-bm .x13-bm-circle:hover { background: rgba(255,255,255,.12) !important; }
.x13-bm .x13-bm-promo:hover { background: rgba(255,255,255,.09) !important; }
.x13-bm .x13-bm-promo-gold:hover { background: rgba(220,180,85,.13) !important; }
.x13-bm [data-x13-bm-sample-next]:hover { color: #dcb352; }
@media (max-width: 980px) {
  .x13-bm .x13-bm-tool { grid-template-columns: 1fr !important; }
  .x13-bm .x13-bm-tool > * { grid-column: auto !important; grid-row: auto !important; }
  .x13-bm .x13-bm-collab { grid-template-columns: 1fr !important; }
  .x13-bm .x13-bm-plate { max-width: 520px; justify-self: center; }
  .x13-bm .x13-bm-console > div:first-child { width: 100% !important; justify-content: center; }
  .x13-bm .x13-bm-console > div:first-child > span[role="button"] { flex: 1 !important; width: auto !important; }
}
@media (max-width: 900px) {
  .x13-bm .x13-bm-hero { grid-template-columns: 1fr !important; gap: 32px !important; }
}
@media (max-width: 640px) {
  .x13-bm .x13-bm-h1 { font-size: 36px !important; }
}

/* ---- Discourse (Discourse.dc.html; its lay tiers are mid below 1040px, narrow below 780px) ---- */
.x13-dc a.x13-dc-lead-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.x13-dc a.x13-dc-headline:hover { color: #1a3d74 !important; }
.x13-dc .x13-dc-red:hover, .x13-dc-page .x13-dc-red:hover { background: #a83424 !important; color: #fff !important; }
.x13-dc .x13-dc-secshare:hover { color: #c33d29 !important; border-color: #c33d29 !important; }
.x13-dc .x13-dc-secshare-link:hover { text-decoration: underline; }
.x13-dc .x13-dc-circle:hover { border-color: #1a3d74 !important; background: #f6f7fa !important; }
.x13-dc .x13-dc-row:hover { background: #f2f4f8 !important; }
.x13-dc .x13-dc-dot:hover { opacity: 1 !important; transform: scale(1.8); z-index: 5; }
.x13-dc .x13-dc-share:hover, .x13-dc .x13-dc-share-red:hover { color: #c33d29 !important; }
.x13-dc .x13-dc-write:hover { color: #8f2a1a !important; border-color: #8f2a1a !important; }
.x13-dc .x13-dc-blue-link:hover { color: #c8dcf7 !important; }
/* The publication list (40 outlets, the artboard draws 20) runs well past the two charts,
   so the chart column stays on screen until the list ends (client, 19 September). It is
   pinned by its foot: on a screen too short for both charts, the reader scrolls through
   the first chart as usual and the second one stays beside the rest of the list. */
@media (min-width: 1040px) {
  .x13-dc .x13-dc-charts03 { position: sticky; bottom: 18px; align-self: end; }
}
@media (max-width: 1039px) {
  .x13-dc .x13-dc-grid02 { grid-template-columns: minmax(0,1fr) !important; }
  .x13-dc .x13-dc-grid03 { grid-template-columns: minmax(0,1fr) !important; gap: 0 !important; }
  .x13-dc .x13-dc-rail { border-right: none !important; padding-right: 0 !important; margin-bottom: 30px; }
  .x13-dc .x13-dc-railcols { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)) !important; }
  .x13-dc .x13-dc-s03wheel { margin-right: 0 !important; }
}
@media (max-width: 779px) {
  .x13-dc .x13-dc-pad { padding: 38px 20px 40px !important; }
  .x13-dc .x13-dc-padtop { padding: 36px 20px 40px !important; }
  .x13-dc .x13-dc-padcta { padding: 32px 20px !important; }
  .x13-dc .x13-dc-padattr { padding: 16px 20px !important; }
  .x13-dc .x13-dc-h1 { font-size: 32px !important; }
  .x13-dc .x13-dc-h2 { font-size: 25px !important; }
  .x13-dc .x13-dc-grid01 { grid-template-columns: minmax(0,1fr) !important; }
  .x13-dc .x13-dc-vs { padding: 12px 0 !important; }
  .x13-dc .x13-dc-grid03 { padding: 18px 16px 22px !important; }
  .x13-dc .x13-dc-chart { height: 230px !important; }
  .x13-dc .x13-dc-pick-head { display: none !important; }
  .x13-dc .x13-dc-pick { grid-template-columns: 56px minmax(0,1fr) !important; gap: 0 16px !important; }
  .x13-dc .x13-dc-eye { display: flex !important; }
  .x13-dc .x13-dc-pick-vs { grid-column: 2; border-left: none !important; border-top: 1px solid #e8eaee; padding: 10px 0; }
  .x13-dc .x13-dc-pick-other { grid-column: 2; }
  .x13-dc .x13-dc-pick-span { grid-column: 1 / 3 !important; }
  .x13-dc .x13-dc-grid05 { grid-template-columns: minmax(0,1fr) !important; }
  .x13-dc .x13-dc-vs5 { flex-direction: row !important; border-left: none !important; border-right: none !important; border-top: 1px solid #e8eaee; border-bottom: 1px solid #e8eaee; padding: 9px 18px !important; }
  .x13-dc .x13-dc-vslabel { writing-mode: horizontal-tb !important; transform: none !important; }
  .x13-dc .x13-dc-pairpad { padding: 16px 18px !important; }
  .x13-dc .x13-dc-grid06h { grid-template-columns: minmax(0,1fr) !important; gap: 16px !important; }
  .x13-dc .x13-dc-grid06d { grid-template-columns: minmax(0,1fr) !important; }
  .x13-dc .x13-dc-dim-first { border-right: none !important; border-bottom: 1px solid #e8eaee; }
}

/* ---- Share Preview Standard (18 September): the trigger row, the tray and the sheet ----
   res/share previews/design_handoff_share_previews. The row is the handoff's
   (Share Link Preview.dc.html, Part A): Save pair in navy, Share pair in red,
   replacing the pill of five icons. The tray and the sheet are the standard's
   own .tray and .sheet (share-standard.html, section 01), measured element by
   element. Buttons are reset in full because the parent theme styles every
   button and every button:hover. */
.single-post .aj-share-pair-badge,
.single-post .aj-inline-save { font: inherit; -webkit-appearance: none; appearance: none; }
@media (min-width: 681px) {
  .single-post .aj-share-pair-inline,
  .single-post .aj-article-share-foot {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 34px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .single-post .aj-article-share-foot {
    justify-content: flex-end;
    margin-top: 30px;
    padding: 12px 0;
  }
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-inline-save,
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-inline-save:hover,
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-badge,
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-badge:hover {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    font: 800 11px/1 "IBM Plex Sans", sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #1a3d74;
    cursor: pointer;
  }
  .single-post .aj-share-pair-inline .aj-inline-save { margin-left: auto; }
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-inline-save[aria-pressed="true"] { color: #87651f; }
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-badge,
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-badge:hover {
    margin: 0;
    padding-bottom: 2px;
    border-bottom: 2px solid #c33d29;
    color: #c33d29;
  }
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-label,
  .single-post :is(.aj-share-pair-inline, .aj-article-share-foot) .aj-share-pair-icon { color: inherit; font: inherit; letter-spacing: inherit; }
}
@media (max-width: 680px) {
  .single-post .aj-article-share-foot {
    display: flex;
    align-items: stretch;
    gap: 8px;
    min-height: 48px;
    margin-top: 26px;
  }
  /* Save in the same type as the "Share article" label beside it (22 September).
     Placed here because the reset above (font: inherit) came later than the
     old phone rule and replaced its font with the page's body font. */
  .single-post .aj-inline-save { font: 800 11.5px/1 "IBM Plex Sans", sans-serif; letter-spacing: .07em; }
  /* A tap leaves the button focused, and the parent theme paints every
     focused, hovered or pressed button red. Unsaved stays white (22 September). */
  .single-post .aj-inline-save:not([aria-pressed="true"]):is(:hover, :focus, :active) { background: #fff; }
}

/* The tray: a disclosure under its row. */
.aj-tray {
  container-type: inline-size;
  margin-top: 12px;
  background: #fff;
  border: 1px solid #e4e8ef;
  color: #16233a;
  font-family: "IBM Plex Sans", sans-serif;
  line-height: normal;
}
.aj-tray-body {
  display: grid;
  grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  padding: 18px 20px;
}
@container (max-width: 520px) { .aj-tray-body { grid-template-columns: 1fr; } }
/* Under a Discourse section head (location 05), where the old panel sat. */
[data-dc-section-head] + .aj-tray { margin: -6px 0 26px; }
/* The front page's debate card (location 12): the day's split opens under the
   curves' head, the lead pair under its footer row. */
[data-x13-dx-head] + .aj-tray { margin: 0 0 18px; }
/* A tool page's own address (location 12a): under Pair Search's buttons, the
   search box's width; under the Bias Meter's "The reading" row, above the console. */
.x13-ps [data-x13-page-head] + .aj-tray { width: 100%; max-width: 620px; margin: 16px 0 0; text-align: left; }
.x13-bm [data-x13-page-head] + .aj-tray { margin: 0 0 18px; }
.x13-home .x13-dx-share:hover { background: #d4462f !important; }
.x13-home .x13-dx-pair:hover { color: #a93423 !important; border-bottom-color: #a93423 !important; }
/* In a category masthead, whose layers let clicks pass through (location 06). */
.x13-sec-d .aj-tray { pointer-events: auto; }
/* The ArmChair Read's selection head and its trigger, red, uppercase, with
   the upload arrow (location 06). Reset in full: the parent theme styles
   every button. */
.aj-read-shape-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.aj-read-shape-head + .aj-tray { margin: 16px 0 20px; }
.aj-read-shape .aj-read-share,
.aj-read-shape .aj-read-share:hover,
.aj-read-shape .aj-read-share:focus { display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font: 800 11px/1.2 "IBM Plex Sans", sans-serif; letter-spacing: .04em; text-transform: uppercase; color: #c33d29; cursor: pointer; }
.aj-read-shape .aj-read-share:focus-visible { outline: 2px solid #1a3d74; outline-offset: 2px; }
.aj-tray-arrives { display: grid; gap: 8px; min-width: 0; }
.aj-share-card { display: block; width: 100%; height: auto; aspect-ratio: 1200 / 630; box-sizing: border-box; border: 1px solid #dfe3ea; }
.aj-tray-kicker { display: block; font: 600 9px/1 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; color: #616a79; }
.aj-tray-actions { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.aj-tray-chip { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; min-width: 0; padding: 9px 13px; border: 1px dashed #ccd3df; background: #f8f9fc; }
.aj-tray-chip span { min-width: 0; font: 600 12px/1.3 "IBM Plex Sans", sans-serif; color: #1a3d74; overflow-wrap: anywhere; }
.aj-tray .aj-tray-chip button,
.aj-tray .aj-tray-chip button:hover,
.aj-tray .aj-tray-chip button:focus { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font: 800 10px/1.3 "IBM Plex Sans", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #c33d29; white-space: nowrap; cursor: pointer; }
.aj-tray-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.aj-tray .aj-tray-pill,
.aj-tray .aj-tray-pill:hover,
.aj-tray .aj-tray-pill:focus { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 15px 0 5px; border-radius: 19px; background: #eef3fa; color: #1a3d74; font: 600 11.5px/1 "IBM Plex Sans", sans-serif; letter-spacing: .01em; text-decoration: none; transition: background .15s, transform .15s; }
.aj-tray .aj-tray-pill:hover { background: #dfe8f7; transform: translateY(-1px); }
.aj-tray-pill i { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 28px; height: 28px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(19,41,75,.12); }
.aj-tray-note { margin: 0; font: 400 10.5px/1.4 "IBM Plex Sans", sans-serif; color: #586373; }

/* The sheet: the phone's version, over a scrim. */
@keyframes ajSheetUp { from { transform: translateY(18px); opacity: .4; } to { transform: none; opacity: 1; } }
@keyframes ajScrimIn { from { opacity: 0; } to { opacity: 1; } }
.aj-sheet-scrim { position: fixed; inset: 0; z-index: 1200; background: rgba(15,28,48,.5); animation: ajScrimIn .16s ease-out; }
.aj-sheet {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1201;
  box-sizing: border-box;
  max-height: 88vh;
  overflow-y: auto;
  padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px));
  border: 1px solid #dfe3ea;
  border-bottom: 0;
  border-radius: 16px 16px 0 0;
  background: #fff;
  box-shadow: 0 -12px 40px -18px rgba(19,41,75,.6);
  color: #16233a;
  font-family: "IBM Plex Sans", sans-serif;
  line-height: normal;
  text-align: left;
  animation: ajSheetUp .2s cubic-bezier(.22,1,.36,1);
}
.aj-sheet-grab { width: 38px; height: 4px; margin: 9px auto 0; border-radius: 2px; background: #dfe3ea; }
.aj-sheet-hd { display: grid; gap: 3px; padding: 12px 18px 0; }
.aj-sheet-hd b { font: 500 20px/1.2 "EB Garamond", serif; color: #1a3d74; }
.aj-sheet-hd span { font: 600 9px/1.3 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; color: #616a79; }
.aj-sheet-block { margin: 12px 18px 0; overflow: hidden; border: 1px solid #dfe3ea; border-radius: 10px; }
.aj-sheet-block .aj-share-card { border: 0; border-bottom: 1px solid #dfe3ea; }
.aj-sheet-row { padding: 12px 13px; }
.aj-sheet-row + .aj-sheet-row { border-top: 1px solid #eef1f6; }
.aj-sheet-row.is-other { background: #fbfcfd; }
.aj-sheet-k { display: flex; align-items: center; gap: 8px; font: 600 8.5px/1 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: #616a79; }
.aj-sheet-row.is-other .aj-sheet-k > span:first-child { color: #c33d29; }
.aj-sheet-k .aj-sheet-band { margin-left: auto; font-size: 9px; letter-spacing: .04em; white-space: nowrap; }
.aj-sheet-t { margin-top: 4px; font: 500 15.5px/1.3 "EB Garamond", serif; color: #1c3255; text-wrap: pretty; }
.aj-sheet-strip { padding: 9px 13px; border-top: 1px solid #e0e6ef; background: #eef3fa; font-size: 11px; line-height: 1.4; color: #616a78; }
.aj-sheet-strip b { font-weight: 700; color: #1a3d74; }
.aj-sheet-send { padding: 14px 18px 0; }
.aj-sheet-kick { display: block; font: 600 9px/1 "IBM Plex Mono", ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: #616a79; }
.aj-sheet-tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 8px; }
.aj-sheet .aj-sheet-tile,
.aj-sheet .aj-sheet-tile:hover,
.aj-sheet .aj-sheet-tile:focus { display: flex; flex-direction: column; align-items: center; gap: 7px; box-sizing: border-box; min-height: 76px; padding: 10px 4px; border-radius: 16px; font: 600 10.5px/1 "IBM Plex Sans", sans-serif; color: #2a3a4e; text-decoration: none; }
.aj-sheet-tile i { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(19,41,75,.14); }
.aj-sheet .aj-sheet-copy,
.aj-sheet .aj-sheet-copy:hover,
.aj-sheet .aj-sheet-copy:focus { display: flex; align-items: center; justify-content: center; gap: 8px; width: calc(100% - 36px); height: 46px; margin: 12px 18px 0; padding: 0; border: 0; border-radius: 23px; background: #eef3fa; box-shadow: none; font: 800 11px/1 "IBM Plex Sans", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #1a3d74; cursor: pointer; }
.aj-sheet-fine { margin: 0; padding: 8px 18px 0; font: 400 11px/1.5 "IBM Plex Sans", sans-serif; color: #616a79; }
.aj-sheet .aj-sheet-close,
.aj-sheet .aj-sheet-close:hover,
.aj-sheet .aj-sheet-close:focus { display: flex; align-items: center; justify-content: center; width: calc(100% - 36px); height: 48px; margin: 10px 18px 0; padding: 0; border: 1.5px solid #c3cad4; border-radius: 24px; background: transparent; box-shadow: none; font: 800 12px/1 "IBM Plex Sans", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #616a78; cursor: pointer; }
.aj-sheet :focus-visible,
.aj-tray :focus-visible { outline: 2px solid #1a3d74; outline-offset: 2px; }

/* ======================================================================
   Author.dc.html + Mobile Author.dc.html (19 September bundle)
   Markup: template-parts/author/. Behaviour: modules/author-x13.js.
   ====================================================================== */
html body.x13-author-page, body.x13-author-page .aj-site#page,
html body.x13-reader-page, body.x13-reader-page .aj-site#page {
  background-color: #fbf6ea;
  background-image: radial-gradient(130% 80% at 50% 0%, rgba(255,255,255,.9), transparent 62%), repeating-linear-gradient(45deg, rgba(139,90,43,.018) 0, rgba(139,90,43,.018) 1px, transparent 1px, transparent 5px);
}
.x13-au, .x13-au-d, .x13-au-m, .x13-reader-page .aj-reader-profile {
  background: transparent !important;
  color: #2b2422;
}
.x13-au [data-au-panel], .x13-au .au-ledger, .x13-au .au-fork,
.x13-reader-page .rp-panel, .x13-reader-page .rp-account-card,
.x13-reader-page .rp-next-reading > section {
  border-color: #ddd0b8;
  border-radius: 0;
}
.x13-reader-page .aj-reader-profile {
  --aj-font-mono: 'IBM Plex Sans', sans-serif;
  --aj-color-rule-track: #ddd0b8;
  --aj-color-ink-muted: #5d5045;
}
.x13-reader-page .rp-stat-val,
.x13-reader-page .rp-next-spectrum-key b,
.x13-reader-page [data-rp-axis],
.x13-reader-page [data-rp-value] { font-family: 'IBM Plex Mono', ui-monospace, monospace; }
.x13-reader-page .rp-eyebrow, .x13-reader-page .rp-stat-label,
.x13-reader-page .rp-next-section-head > small { color: #7c6c5f; }
.x13-reader-page .rp-panel h2,
.x13-reader-page .rp-next-section-head h2,
.x13-au [data-au-panel] h2 { color: #12505e; border-bottom-color: #dcb352; }
.x13-au [style*="IBM Plex Mono"]:not([style*="font-variant-numeric"]),
.x13-reader-page [style*="IBM Plex Mono"]:not([style*="font-variant-numeric"]):not([data-rp-axis]):not([data-rp-value]) { font-family: 'IBM Plex Sans', sans-serif !important; }
.x13-au [style*="font-variant-numeric"],
.x13-reader-page [style*="font-variant-numeric"] { font-family: 'IBM Plex Mono', ui-monospace, monospace !important; }
.x13-au .x13-au-seat { font-family: 'IBM Plex Sans', sans-serif !important; }
/* Hero tiles (Author.dc.html .au-ledger): figures in EB Garamond, the "/5" suffix in Plex Mono, as the artboard sets them. */
.x13-au .au-ledger [style*="EB Garamond"] { font-family: 'EB Garamond', serif !important; }
.x13-au .au-ledger [style*="EB Garamond"] > [style*="IBM Plex Mono"] { font-family: 'IBM Plex Mono', ui-monospace, monospace !important; }
/* Standing orders fork (Author.dc.html .au-fork): one column under 900px, and always on the phone. */
/* Hero tiles (.au-ledger) go to two columns under 900px (handoff 04). */
@media (max-width: 899px) { .x13-au .au-fork { grid-template-columns: minmax(0,1fr) !important; } .x13-au .au-ledger { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
.x13-au .au-tabbar > div::-webkit-scrollbar { display: none; }
/* Reader.dc.html (22 September): the reader page's own breakpoints. */
@media (max-width: 899px) {
  .x13-rd .rd-arch, .x13-rd .rd-3col { grid-template-columns: minmax(0,1fr) !important; gap: 26px !important; }
  .x13-rd .rd-arch-bars { border-left: none !important; padding-left: 0 !important; border-top: 1px solid rgba(255,255,255,.12); padding-top: 22px; }
  .x13-rd .rd-hero-ledger { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
.x13-rd .x13-rd-slider::-webkit-scrollbar { display: none; }
.x13-rd [data-au-slide-foot] .aj-pair-actions { display: flex; gap: 14px; }
.x13-rd [data-au-slide-foot] .aj-pair-actions button { min-height: 44px; padding: 0; border: 0; background: transparent !important; font: 600 9.5px/1 'IBM Plex Sans', sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #1a3d74 !important; cursor: pointer; }

/* The ArmChair Read phone pair is the visual standard on Discourse and profiles. */
.aj-mobile-pair-section { position: relative; background: #14304f !important; color: #fff; overflow: hidden; }
.aj-mobile-pair-section .aj-mobile-pair-track { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.aj-mobile-pair-section .aj-mobile-pair-track::-webkit-scrollbar { display: none; }
.aj-mobile-pair-card { display: flex; flex-direction: column; flex: 0 0 min(302px, calc(100vw - 72px)) !important; min-width: 0; scroll-snap-align: center !important; background: #fff; border: 2px solid var(--pair-frame); box-shadow: 0 0 0 4px #fff, 0 14px 30px -20px rgba(3,12,26,.7) !important; color: #16233a; }
.aj-mobile-pair-card .aj-mobile-pair-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 42px; padding: 10px 13px; background: var(--pair-frame); }
.aj-mobile-pair-card .aj-mobile-pair-number { position:static; top:auto; left:auto; z-index:auto; font: 500 14px/1 'EB Garamond',serif; color: #dcb352; flex: none; }
.aj-mobile-pair-card .aj-mobile-pair-side { display: block; padding: 14px 13px 13px; text-decoration: none; min-width: 0; }
.aj-mobile-pair-card .aj-mobile-pair-side:hover { text-decoration: none; }
.aj-mobile-pair-card .aj-mobile-pair-divider { display: flex; align-items: center; gap: 9px; padding: 6px 13px; background: rgba(22,50,89,.05); border-top: 1px solid #e8eaee; border-bottom: 1px solid #e8eaee; }
.aj-mobile-pair-card .aj-mobile-pair-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; min-height: 48px; padding: 0 13px 4px; background: rgba(22,50,89,.028); border-top: 1px solid #e8eaee; }
.aj-mobile-pair-dots { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 12px; margin-top: 4px; }
.aj-mobile-pair-dots span { display: block; width: 6px; height: 6px; border-radius: 4px; background: rgba(255,255,255,.28); transition: width .2s, background .2s; }
.aj-mobile-pair-dots span[aria-current="true"] { width: 16px; background: #dcb352; }
/* Phone Discourse pair band: the design's navy gradient over the shared pair section's flat navy. */
.x13-dc-phone .aj-dc-pair-section { background: linear-gradient(168deg,#1a3d74 0%,#163259 62%,#14304f 100%) !important; }
.aj-saved-pair-section { margin: 0 -18px; padding: 20px 18px 18px; }
.aj-saved-pair-section [data-au-saved-pairs-m] { margin: 0 -18px !important; padding: 16px 18px 12px !important; }
.aj-saved-pair-section .aj-sec-band { background: transparent !important; border: 0 !important; margin: 0 !important; padding: 0 !important; }
.aj-saved-pair-section .aj-sec-band [data-au-saved-pairs-count] { color: #dcb352 !important; }
.aj-saved-pair-section .aj-sec-band > span:first-child > span { font-size: 10px !important; color: #dcb352 !important; letter-spacing: .18em !important; }
.aj-saved-pair-section .aj-saved-pair-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; color: #dcb352; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.aj-saved-pair-section [data-au-saved-pairs-count] { font: 600 9px/1.3 'IBM Plex Mono',monospace; color: #dcb352; white-space: nowrap; }
.aj-saved-pair-section .aj-saved-pair-hint { margin-top: 10px; font-size: 10px; color: #a8bcda; }
.aj-saved-pair-section .aj-saved-pair-title { margin-top: 8px; color: #fff; font: 500 25px/1.15 'EB Garamond',serif; }
.aj-saved-pair-section .aj-saved-pair-description { margin-top: 7px; color: #a8bcda; font: italic 14px/1.5 'EB Garamond',serif; }
.aj-saved-pair-section .aj-mobile-pair-foot { flex-wrap: wrap; padding-top: 8px; }
.aj-saved-pair-section .aj-mobile-pair-foot .aj-pair-actions { display: flex; justify-content: flex-end; gap: 14px; width: 100%; }
.aj-saved-pair-section .aj-mobile-pair-foot .aj-pair-actions button { min-height: 38px; padding: 0; border: 0; background: transparent !important; font: 700 9px/1 'IBM Plex Sans',sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #c33d29 !important; }
.aj-saved-pair-section .aj-saved-pair-more { display: flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 12px; border: 1px solid rgba(255,255,255,.35); background: transparent !important; color: #fff; font-size: 10px; text-transform: uppercase; cursor: pointer; }
.aj-saved-pair-section [data-au-saved-pairs-more][hidden] { display: none !important; }
[data-screen-label="Author saved (mobile)"] .aj-saved-pair-section { margin: 0 -14px; padding: 20px 14px 18px; }
[data-screen-label="Author saved (mobile)"] .aj-saved-pair-section [data-au-saved-pairs-m] { margin: 0 -14px !important; padding: 16px 14px 12px !important; }
.aj-saved-article-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding: 11px 14px; background: #12505e; color: #fff; font-size: 15px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aj-saved-article-heading [data-au-saved-arts-count] { font: 600 9px/1.3 'IBM Plex Mono',monospace; letter-spacing: .1em; }
.aj-saved-pair-more { display: flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 12px; border: 1px solid #ddd0b8; background: #fff; color: #3f362f; font-size: 10px; text-transform: uppercase; cursor: pointer; }
.aj-saved-pair-more[hidden] { display: none !important; }
.x13-rd .x13-rd-card:hover { box-shadow: 0 18px 34px -16px rgba(19,41,75,.35); }
.x13-rd .x13-rd-slide:hover { background: #a83424 !important; color: #fff !important; }
.x13-au-m .au-fork { grid-template-columns: minmax(0,1fr) !important; }
/* Profile section headers: a petrol teal band with a 3px gold rule (handoff G1). */
.x13-au div:has(> .aj-sec-band) { border-top: none !important; border-color: #ddd0b8 !important; }
.x13-au .aj-sec-band { position: relative; overflow: hidden; align-items: center !important; background: #12505e !important; border-bottom: 3px solid #dcb352 !important; }
.x13-au .aj-sec-band::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #0c3c47; }
.x13-au .aj-sec-band > * { position: relative; }
.x13-au .aj-sec-band > :first-child > span:first-child { font-family: 'IBM Plex Sans', sans-serif !important; font-size: 23px !important; font-weight: 700 !important; letter-spacing: .14em !important; line-height: 1.2; color: #fff !important; }
.x13-au .aj-sec-band > :first-child > span + span { color: rgba(255,255,255,.72) !important; }
.x13-au .aj-sec-band > :not(:first-child), .x13-au .aj-sec-band > :not(:first-child) * { color: #fff !important; }
.x13-au .aj-sec-band > span:not(:first-child) { border: 1px solid rgba(255,255,255,.45); border-radius: 3px; padding: 4px 10px; }
.x13-au-m .aj-sec-band { padding: 11px 16px 10px !important; }
.x13-au-m .aj-sec-band::before { width: 5px; }
.x13-au-m .aj-sec-band > :first-child > span:first-child { font-size: 15px !important; letter-spacing: .12em !important; }
.x13-au-m .aj-sec-band > :not(:first-child), .x13-au-m .aj-sec-band > :not(:first-child) * { color: #dcb352 !important; }
.x13-au-m .aj-sec-band > span:not(:first-child) { border: 0; padding: 0; }
.x13-reader-page .rp-card > .rp-card-head,
.x13-reader-page .rp-review-stage > .rp-card-head { position: relative; overflow: hidden; align-items: center; padding: 14px 28px 13px; background: #12505e; border-bottom: 3px solid #dcb352; }
.x13-reader-page .rp-card > .rp-card-head { margin: calc(-1 * var(--aj-space-24, 24px)) calc(-1 * var(--aj-space-24, 24px)) var(--aj-space-18, 18px); }
.x13-reader-page .rp-card > .rp-card-head::before,
.x13-reader-page .rp-review-stage > .rp-card-head::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: #0c3c47; }
.x13-reader-page .rp-card-head > * { position: relative; }
.x13-reader-page .rp-card > .rp-card-head .rp-card-eyebrow, .x13-reader-page .rp-card > .rp-card-head .rp-private-pill { color: #dcb352; }
.x13-reader-page .rp-card > .rp-card-head .rp-card-title,
.x13-reader-page .rp-review-stage > .rp-card-head .rp-card-eyebrow { font-family: 'IBM Plex Sans', sans-serif; font-size: 23px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #fff; border: 0; }
.x13-reader-page .rp-card > .rp-card-head .rp-card-sub, .x13-reader-page .rp-card-head .rp-review-total { color: rgba(255,255,255,.78); }
@media (max-width: 760px) {
  .x13-reader-page .rp-card > .rp-card-head { margin-left: calc(-1 * var(--aj-space-18, 18px)); margin-right: calc(-1 * var(--aj-space-18, 18px)); }
}
@media (max-width: 699px) {
  .x13-reader-page .rp-card > .rp-card-head,
  .x13-reader-page .rp-review-stage > .rp-card-head { padding: 11px 16px 10px; }
  .x13-reader-page .rp-card > .rp-card-head::before,
  .x13-reader-page .rp-review-stage > .rp-card-head::before { width: 5px; }
  .x13-reader-page .rp-card > .rp-card-head .rp-card-title,
  .x13-reader-page .rp-review-stage > .rp-card-head .rp-card-eyebrow { font-size: 15px; letter-spacing: .12em; }
}
.aj-theel-plane { width: 100%; max-width: 530px; padding-left: 30px; box-sizing: border-box; color: #5d5045; }
.aj-theel-plane-square { position: relative; width: 100%; aspect-ratio: 1; border: 1px solid #b9c2cf; background: #fff; }
.aj-theel-plane-y-ticks { position: absolute; z-index: 3; left: -29px; top: 4%; bottom: 4%; display: flex; flex-direction: column; justify-content: space-between; font: 500 9px/1 'IBM Plex Mono',ui-monospace,monospace; color: #728196; }
.aj-theel-plane-grid { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.aj-theel-plane-dot { display: block; position: absolute; z-index: 2; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border: 1px solid #fff; border-radius: 50%; opacity: .75; transition: opacity .18s; }
.aj-theel-plane-dot:hover, .aj-theel-plane-dot:focus-visible { z-index: 8; opacity: 1 !important; outline: 2px solid #14304f; outline-offset: 2px; }
.aj-theel-plane-dot.is-photo { width: 22px; height: 22px; margin: -11px 0 0 -11px; overflow: hidden; }
.aj-theel-plane-dot.is-photo img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.aj-theel-plane-median { position: absolute; z-index: 5; display: flex; width: 30px; height: 30px; margin: -15px 0 0 -15px; align-items: center; justify-content: center; filter: drop-shadow(0 1px 2px rgba(0,0,0,.25)); }
.aj-theel-plane-median-label { position: absolute; z-index: 6; margin: -10px 0 0 17px; padding: 2px 4px; background: rgba(255,255,255,.88); font: 600 10px/1.3 'IBM Plex Sans', sans-serif; color: #14304f; }
.aj-theel-plane-y-label, .aj-theel-plane-x-label { font: 600 10px/1.4 'IBM Plex Mono', ui-monospace, monospace; color: #617187; }
.aj-theel-plane-y-label { margin-bottom: 6px; }
.aj-theel-plane-x-label { margin-top: 4px; text-align: center; }
.aj-theel-plane-ticks { display: flex; justify-content: space-between; margin: 5px 0 0 4%; width: 92%; font: 500 9px/1.3 'IBM Plex Mono', ui-monospace, monospace; color: #728196; }
.aj-theel-plane-note, .aj-theel-plane-empty { margin: 10px 0 0; font: 400 12px/1.5 'IBM Plex Sans', sans-serif; color: #5f697a; }
.aj-theel-plane-empty { padding: 24px; border: 1px solid #ddd0b8; background: #fff; }

/* Authors index: both measured planes share a view control and filters. */
.x13-au .aj-authors-graph-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:0; padding:24px 34px 0; background:#fff; }
.aj-authors-graph-toolbar button { display:flex; align-items:center; gap:8px; min-height:52px; padding:6px 12px; border:1px solid #aeb9c9; background:#fff; color:#163259; font:700 12px/1.2 'IBM Plex Sans',sans-serif; cursor:pointer; }
.aj-authors-graph-toolbar button[aria-pressed="true"] { border-color:#1a3d74; box-shadow:inset 0 -3px #dcb352; background:#e9edf4; }
.aj-authors-graph-toolbar select { min-height:48px; max-width:240px; padding:8px 10px; border:1px solid #aeb9c9; background:#fff; color:#163259; font:600 12px/1.2 'IBM Plex Sans',sans-serif; }
.aj-authors-graph-toolbar .aj-select { flex:1 1 200px; max-width:280px; margin-left:auto; }
.aj-authors-graph-toolbar button:focus-visible { outline:3px solid #dcb352; outline-offset:2px; }
.aj-authors-graph-toolbar [data-au-counting] { flex-basis:100%; color:#5f697a; font:600 10px/1.4 'IBM Plex Mono',monospace; text-transform:uppercase; }
.aj-authors-region-grid { position:absolute; inset:0; display:grid; grid-template-columns:37.5% 25% 37.5%; grid-template-rows:37.5% 25% 37.5%; pointer-events:none; overflow:hidden; }
.aj-authors-region-grid span { opacity:.09; }
.x13-au-m .aj-authors-region-grid span { opacity:.13; }
.x13-au-d [data-x13-scatter] { background:#fff; }
.x13-au-d .aj-authors-region-grid { display:none; }
.x13-au-graph-column { min-width:0; display:flex; flex-direction:column; gap:28px; }
.x13-au-d .x13-au-chart-toolbar { justify-content:flex-end; gap:12px !important; }
.x13-au-d .aj-authors-graph-toolbar { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0; gap:10px; }
.x13-au-d .aj-authors-graph-toolbar button { min-width:0; min-height:66px; padding:10px 12px; gap:12px; text-align:left; border-color:#dfe3ea; border-radius:0; }
.x13-au-d .aj-authors-graph-toolbar button[aria-pressed=true] { border-color:#b9c5d6; box-shadow:inset 0 -3px #163259; background:#f4f6fa; }
.x13-au-d .aj-authors-graph-toolbar small { display:block; margin-bottom:4px; color:#617187; font:600 9px/1.2 'IBM Plex Mono',monospace; text-transform:uppercase; letter-spacing:.12em; }
.x13-au-d .aj-authors-graph-toolbar strong { display:block; color:#163259; font:700 13px/1.3 'IBM Plex Sans',sans-serif; }
.x13-au-d [data-x13-dot]:focus-visible { outline:2px solid #b28a32; outline-offset:3px; z-index:9; }
.x13-au-dot-tooltip { position:absolute; z-index:20; width:230px; max-width:calc(100% - 16px); padding:14px; border-radius:8px; background:#163259; color:#fff; box-shadow:0 12px 32px rgba(0,0,0,.2); pointer-events:none; }
.x13-au-dot-tooltip strong { display:block; padding-bottom:6px; font:500 19px/1.2 'EB Garamond',serif; }
.x13-au-dot-tooltip small { display:block; margin-bottom:8px; color:#dcb352; font:600 10px/1.4 'IBM Plex Mono',monospace; }
.x13-au-dot-tooltip span { display:block; font:400 12px/1.6 'IBM Plex Sans',sans-serif; }
.x13-au-m .aj-authors-mobile-graph { background:#112d52 !important; }
.x13-au-m .aj-authors-graph-toolbar { margin-top:20px; padding:0; background:transparent; }
.x13-au-m .aj-authors-graph-toolbar [data-au-counting] { color:rgba(255,255,255,.7); }
.x13-au .aj-authors-theel { max-width:none !important; background:#112d52 !important; border-top:3px solid #dcb352; color:#dbe5f2; }
.x13-au .aj-authors-theel > h2 { color:#fff !important; }
.x13-au .aj-authors-theel > p { color:#c8d5e8 !important; }
.x13-au .aj-authors-theel .aj-theel-plane { margin:0 auto; color:#dbe5f2; }
.x13-au .aj-authors-theel .aj-theel-plane-square { background:#112d52; border:1px solid #dcb352; }
.x13-au .aj-authors-theel .aj-theel-plane-grid > rect:first-of-type { fill:#112d52; }
.x13-au .aj-authors-theel .aj-theel-plane-grid circle { stroke:#3f5a79; }
.x13-au .aj-authors-theel .aj-theel-plane-grid path { stroke:#b2c5d9; }
.x13-au .aj-authors-theel .aj-theel-plane-y-label,.x13-au .aj-authors-theel .aj-theel-plane-x-label,.x13-au .aj-authors-theel .aj-theel-plane-y-ticks,.x13-au .aj-authors-theel .aj-theel-plane-ticks,.x13-au .aj-authors-theel .aj-theel-plane-note { color:#d2deeb; }
.x13-au .aj-authors-theel .aj-theel-plane-median svg { stroke:#dcb352; }
.x13-au .aj-authors-theel .aj-theel-plane-median-label { background:#112d52; color:#dcb352; }
.x13-au-d .aj-authors-theel { padding:0; border:0; background:#fff !important; color:#16233a; }
.x13-au-d .aj-authors-theel > h2 { color:#16233a !important; font:700 15px/1.4 'IBM Plex Sans',sans-serif !important; }
.x13-au-d .aj-authors-theel > p { color:#5f697a !important; font-size:13px; }
.x13-au-d .aj-authors-theel .aj-theel-plane { max-width:none; }
.x13-au-d .aj-authors-theel .aj-theel-plane-square { background:#fff; border-color:#b9c2cf; }
.x13-au-d .aj-authors-theel .aj-theel-plane-grid > rect:first-of-type { fill:#fff; }
.x13-au-d .aj-authors-theel .aj-theel-plane-grid circle { stroke:#dfe5ed; }
.x13-au-d .aj-authors-theel .aj-theel-plane-grid path { stroke:#728196; }
.x13-au-d .aj-authors-theel .aj-theel-plane-y-label,.x13-au-d .aj-authors-theel .aj-theel-plane-x-label,.x13-au-d .aj-authors-theel .aj-theel-plane-y-ticks,.x13-au-d .aj-authors-theel .aj-theel-plane-ticks,.x13-au-d .aj-authors-theel .aj-theel-plane-note { color:#617187; }
.x13-au-d .aj-authors-theel .aj-theel-plane-median svg { stroke:#16233a; }
.x13-au-d .aj-authors-theel .aj-theel-plane-median-label { background:#fff; color:#16233a; }

/* The all-articles desktop directory follows the Section desktop composition. */
.aj-read-directory { background:#f6f7fa; color:#2a3a4e; }
.aj-read-directory .aj-read-section-inner { width:min(100%,1120px); margin:0 auto; padding:0 24px; }
.aj-read-directory .aj-read-hero { padding:0; overflow:hidden; background:#14304f; }
.aj-read-directory .aj-read-hero-inner { width:min(100%,1120px); margin:0 auto; padding:30px 24px 42px; display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:38px; align-items:stretch; }
.aj-read-directory .aj-read-hero-copy { display:flex; flex-direction:column; min-width:0; }
.aj-read-directory .aj-read-kicker { font:600 10px/1.4 'IBM Plex Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:#a8bcda; }
.aj-read-directory .aj-read-hero h1, .aj-read-directory .aj-read-hero [aria-level="1"] { margin:30px 0 0; color:#fff; font:500 60px/1 'EB Garamond',serif; letter-spacing:-.015em; }
.aj-read-directory .aj-read-hero p { max-width:560px; margin:18px 0 0; color:#a8bcda; font:italic 18px/1.65 'EB Garamond',serif; }
.aj-read-directory .aj-read-totals { display:flex; gap:0; margin-top:auto; padding-top:42px; font-family:'IBM Plex Sans',sans-serif; }
.aj-read-directory .aj-read-totals > span { min-width:0; padding:0 24px; border-right:1px solid rgba(255,255,255,.18); color:#9badce; font:700 10px/1.45 'IBM Plex Sans',sans-serif; letter-spacing:.1em; text-transform:uppercase; }
.aj-read-directory .aj-read-totals > span:first-child { padding-left:0; }
.aj-read-directory .aj-read-totals > span:last-child { border:0; }
.aj-read-directory .aj-read-totals strong { display:block; margin-bottom:5px; color:#fff; font:600 34px/1 'EB Garamond',serif; letter-spacing:0; }
.aj-read-directory .aj-read-categories { align-self:stretch; margin:0; padding:24px 26px 22px; border:0; background:#fff; box-shadow:none; min-width:0; }
.aj-read-directory .aj-read-categories summary { display:flex; justify-content:space-between; align-items:baseline; gap:8px; padding:0 0 13px; border-bottom:1px solid #e8ecf3; list-style:none; color:#c33d29; font:800 10.5px/1.4 'IBM Plex Sans',sans-serif; letter-spacing:.18em; text-transform:uppercase; }
.aj-read-directory .aj-read-categories summary::-webkit-details-marker { display:none; }
.aj-read-directory .aj-read-categories summary [data-read-selection] { float:none; color:#5f697a; font:600 9px/1.3 'IBM Plex Mono',monospace; letter-spacing:0; text-transform:none; }
.aj-read-directory .aj-read-category-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; margin-top:20px; }
.aj-read-directory .aj-read-category-groups fieldset { display:flex; flex-direction:column-reverse; margin:0; min-width:0; }
.aj-read-directory .aj-read-category-groups legend { display:contents; }
.aj-read-directory .aj-read-category-groups legend button { width:100%; min-height:24px; margin:0; padding:7px 0 0; border-top:3px solid #b28a32; color:#58616f; font:600 8px/1.2 'IBM Plex Mono',monospace; letter-spacing:.2em; text-transform:uppercase; text-align:center; }
.aj-read-directory .aj-read-category-books { display:flex; align-items:flex-end; justify-content:center; flex-wrap:nowrap; gap:2px; min-height:116px; padding:0 1px; }
.aj-read-directory .aj-read-category-item { position:relative; display:flex; align-items:flex-end; }
.aj-read-directory .aj-read-category-item label { display:flex; align-items:center; justify-content:center; width:18px; height:96px; min-height:0; margin:0; padding:6px 2px; background:#1a3d74; border-left:2px solid rgba(255,255,255,.14); color:#fff; font:600 10px/1 'EB Garamond',serif; letter-spacing:.015em; writing-mode:vertical-rl; transform:rotate(180deg); cursor:pointer; overflow:hidden; }
.aj-read-directory .aj-read-category-item:nth-child(3n+2) label { height:103px; background:#14304f; }
.aj-read-directory .aj-read-category-item:nth-child(3n) label { height:110px; background:#183963; }
.aj-read-directory .aj-read-category-item label:has(input:not(:checked)) { opacity:.42; }
.aj-read-directory .aj-read-category-item label:has(input:checked):hover { background:#c33d29; }
.aj-read-directory .aj-read-category-item label:focus-within { outline:3px solid #dcb352; outline-offset:2px; }
.aj-read-directory .aj-read-category-item input { position:absolute; width:1px; height:1px; opacity:0; }
.aj-read-directory .aj-read-category-link { position:absolute; right:0; top:-22px; display:none; width:24px; height:22px; align-items:center; justify-content:center; background:#fff; color:#c33d29; font-size:15px; text-decoration:none; }
.aj-read-directory .aj-read-category-item:hover .aj-read-category-link,.aj-read-directory .aj-read-category-item:focus-within .aj-read-category-link { display:flex; }
.aj-read-directory .aj-read-categories > [data-read-all] { display:block; margin:15px 0 0 auto; padding:4px 0; color:#1a3d74; font:700 10px/1.4 'IBM Plex Sans',sans-serif; cursor:pointer; }
.aj-read-directory .aj-read-shape { margin:0; padding:0 0 45px; border:0; border-bottom:1px solid #eef1f6; background:#fff; }
.aj-read-directory .aj-read-section-top { display:flex; align-items:center; gap:14px; min-height:72px; border-bottom:1px solid #eef1f6; }
.aj-read-directory .aj-read-section-no { color:#60708c; font:400 19px/1 'EB Garamond',serif; }
.aj-read-directory .aj-read-section-kicker { color:#c33d29; font:800 10.5px/1.3 'IBM Plex Sans',sans-serif; letter-spacing:.18em; text-transform:uppercase; }
.aj-read-directory .aj-read-through { margin-left:auto; color:#58616f; font:600 9px/1.2 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.aj-read-directory .aj-read-section-top .aj-lens-toggle { flex:none; }
.aj-read-directory .aj-read-shape-head { align-items:flex-start; padding:28px 0 22px; }
.aj-read-directory .aj-read-shape-head h2,.aj-read-directory .aj-read-feed h2 { margin:0; color:#1a3d74; font:500 37px/1.12 'EB Garamond',serif; letter-spacing:-.015em; }
.aj-read-directory .aj-read-shape-head p { margin:9px 0 0; color:#616a78; font:italic 16px/1.5 'EB Garamond',serif; }
.aj-read-directory .aj-read-shape-chart { border-top:1px solid #eef1f6; border-bottom:1px solid #eef1f6; padding:22px 0 12px; }
.aj-read-directory .aj-read-shape-label { color:#5f697a; font:700 11px/1.4 'IBM Plex Sans',sans-serif; letter-spacing:.1em; text-transform:uppercase; }
.aj-read-directory .aj-read-histogram { height:220px; padding-top:20px; gap:3px; }
.aj-read-directory .aj-read-histogram small { font:600 9px/1.3 'IBM Plex Mono',monospace; color:#58616f; text-transform:uppercase; }
.aj-read-directory .aj-read-shape-chart > p { margin:42px 0 0; color:#5f697a; font:400 12px/1.5 'IBM Plex Sans',sans-serif; }
.aj-read-directory .aj-read-pairs-section { padding:0 0 48px; border-top:3px solid #c33d29; background:#f6f7fa; }
.aj-read-directory .aj-pair-rail { margin:0; padding-top:25px; }
.aj-read-directory .aj-pair-rail > header .aj-section-tag { display:none; }
.aj-read-directory .aj-pair-rail > header h2 { margin:0; color:#1a3d74; font:500 37px/1.15 'EB Garamond',serif; }
.aj-read-directory .aj-pair-rail > header p { max-width:650px; margin:7px 0 22px; }
.aj-read-directory .aj-pair-rail-track > .aj-standard-pair { flex-basis:620px; max-width:90%; }
.aj-read-directory .aj-read-pair-carousel { position:relative; }
.aj-read-directory .aj-read-pair-carousel .aj-pair-rail-track { scrollbar-width:none; overscroll-behavior-x:contain; }
.aj-read-directory .aj-read-pair-carousel .aj-pair-rail-track::-webkit-scrollbar { display:none; }
.aj-read-directory .aj-read-pair-carousel .aj-pair-rail-track::after { content:''; flex:0 0 calc(100% - min(620px, 90%)); }
.aj-read-directory .aj-pair-rail-controls { position:absolute; top:25px; right:0; display:flex; align-items:center; gap:8px; }
.aj-read-directory .aj-pair-rail-controls [data-pair-rail-position] { margin-right:10px; color:#66748a; font:600 10px/1 'IBM Plex Mono',monospace; letter-spacing:.08em; }
.aj-read-directory .aj-pair-rail-controls button { display:grid; place-items:center; width:42px; height:42px; padding:0; border:1px solid #aebbd0; background:#fff; color:#1a3d74; cursor:pointer; }
.aj-read-directory .aj-pair-rail-controls button span { font:400 30px/1 'EB Garamond',serif; transform:translateY(-2px); }
.aj-read-directory .aj-pair-rail-controls button:hover:not(:disabled) { border-color:#1a3d74; background:#1a3d74; color:#fff; }
.aj-read-directory .aj-pair-rail-controls button:disabled { opacity:.42; cursor:default; }
.aj-read-directory .aj-pair-rail-controls button:focus-visible,.aj-section-tail-share button:focus-visible,.aj-section-tail-cta a:focus-visible { outline:3px solid #dcb352; outline-offset:3px; }
.aj-read-directory .aj-read-feed { margin:0; padding:0 0 52px; background:#fff; }
.aj-read-directory .aj-read-feed > .aj-read-section-inner > header { display:flex; align-items:center; gap:20px; margin:26px 0 10px; }
.aj-read-directory .aj-read-feed > .aj-read-section-inner > header h2 { flex:1; }
.aj-read-directory .aj-read-feed-grid { display:grid; grid-template-columns:1fr; gap:0; border-top:3px solid #16233a; }
.aj-read-directory .aj-read-piece,.aj-read-directory .aj-read-piece.is-wide { grid-column:auto; margin:0; padding:0; border:0; border-bottom:1px solid #eef1f6; background:#fff; }
.aj-read-directory .aj-read-piece > a { display:grid; grid-template-columns:172px minmax(0,1fr) 152px; grid-template-rows:repeat(4,auto); gap:0 26px; padding:22px 0; text-decoration:none; }
.aj-read-directory .aj-read-piece img,.aj-read-directory .aj-read-piece.is-wide img { grid-column:1; grid-row:1 / span 5; float:none; width:172px; height:114px; margin:0; object-fit:cover; }
.aj-read-directory .aj-read-piece small { grid-column:2; grid-row:1; color:#c33d29; font:800 9.5px/1.3 'IBM Plex Sans',sans-serif; letter-spacing:.18em; }
.aj-read-directory .aj-read-piece h3,.aj-read-directory .aj-read-piece.is-wide h3 { grid-column:2; grid-row:2; margin:8px 0 0; color:#16233a; font:500 23px/1.24 'EB Garamond',serif; }
.aj-read-directory .aj-read-piece p { grid-column:2; grid-row:3; margin:8px 0 0; color:#616a78; font:400 13.5px/1.55 'IBM Plex Sans',sans-serif; }
.aj-read-directory .aj-read-byline { grid-column:2; grid-row:4; margin-top:10px; color:#58616f; font:700 10.5px/1.4 'IBM Plex Sans',sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.aj-read-directory .aj-read-band { grid-column:3; grid-row:1 / span 4; align-self:start; margin:0; color:#1a3d74; font:600 10px/1.4 'IBM Plex Mono',monospace; text-align:right; text-transform:uppercase; }
.aj-read-directory .aj-read-piece:hover { background:#fbfcfd; }
.aj-read-directory [data-read-more] { display:block; margin:30px auto 0; }
.aj-section-tail-cta { background:#1a3d74; color:#f6f7fa; }
.aj-section-tail-inner { width:min(100%,1120px); margin:0 auto; padding:38px 24px 42px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; }
.aj-section-tail-cta h2 { margin:0; color:#fff; font:500 24px/1.3 'EB Garamond',serif; }
.aj-section-tail-cta p { margin:8px 0 0; color:#a8bcda; font:400 15px/1.6 'IBM Plex Sans',sans-serif; }
.aj-section-tail-actions { display:flex; flex-wrap:wrap; align-items:flex-start; gap:14px; }
.aj-section-tail-actions a { display:inline-block; padding:14px 24px; font:700 14px/1.3 'IBM Plex Sans',sans-serif; letter-spacing:.04em; text-transform:uppercase; text-decoration:none; white-space:nowrap; }
.aj-section-tail-primary { background:#c33d29; color:#fff; }
.aj-section-tail-primary:hover { background:#a92f1d; color:#fff; }
.aj-section-tail-secondary { border:1px solid rgba(255,255,255,.5); color:#f6f7fa; }
.aj-section-tail-secondary:hover { background:rgba(255,255,255,.1); color:#fff; }
.aj-section-tail-meter { display:flex; flex-direction:column; align-items:center; gap:8px; }
.aj-section-tail-runs { display:inline-flex; align-items:center; gap:5px; color:rgba(255,255,255,.7); font:400 11px/1.3 'IBM Plex Sans',sans-serif; }
.aj-section-tail-runs i { width:6px; height:6px; border-radius:50%; background:#5fb08c; }
.aj-section-tail-runs strong { color:#fff; }
.aj-section-tail-share { background:#f7f9fc; }
.aj-section-tail-share-inner { width:min(100%,1120px); margin:0 auto; padding:52px 24px 16px; }
.aj-section-tail-share-row { border-top:1px solid #dce4f0; padding-top:20px; }
.aj-section-tail-kicker { display:block; margin-bottom:8px; color:#63728a; font:600 9px/1.4 'IBM Plex Mono',monospace; letter-spacing:.13em; text-transform:uppercase; }
.aj-section-tail-share p { margin:0 0 10px; color:#52647d; font:italic 17px/1.5 'EB Garamond',serif; }
.aj-section-tail-share button { padding:0 0 3px; border:0; border-bottom:1px solid #c33d29; background:none; color:#c33d29; font:800 11px/1.4 'IBM Plex Sans',sans-serif; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.aj-section-tail-share button span { margin-right:5px; font-size:16px; }
.aj-section-tail-share .aj-tray { margin-top:22px; }
@media (max-width:900px) {
  .aj-read-directory .aj-read-hero-inner { grid-template-columns:minmax(0,1fr) 330px; gap:24px; }
  .aj-read-directory .aj-read-categories { padding:20px 16px; }
}

/* Both Discourse plots use the same square plotting area. */
.x13-dc #s03 [data-scatter="plane"] { width:calc(100% - 30px); max-width:500px; height:auto !important; aspect-ratio:1; margin-left:30px; }
.x13-dc #s03 .aj-theel-plane { max-width:530px; }
.x13-dc .x13-dc-railcols .x13-dc-row:focus-visible { outline:2px solid #dcb352; outline-offset:-2px; }
/* Desktop category page, 26 September reference: sizes and colours are the
   artboard's own, inline in section/x13-desk.php. Only the tray and hovers here. */
.x13-sec-d .x13-sec-mast-top > .aj-tray { flex:1 1 100%; pointer-events:auto; }
.x13-sec-d .x13-sec-all-categories:hover { color:#1a3d74 !important; text-decoration:underline !important; }
@media (max-width:780px) { .aj-authors-graph-toolbar button { flex:1; } .aj-authors-graph-toolbar select,.aj-authors-graph-toolbar .aj-select,.aj-authors-graph-toolbar [data-au-counting] { width:100%; max-width:none; } }
.x13-au a { color: inherit; }
.x13-au .ma-tabs { scrollbar-width: none; }
.x13-au .ma-tabs::-webkit-scrollbar { display: none; }
.x13-au [data-au-tab]:focus-visible { outline-offset: -2px; }
/* style-hover in the artboard */
.x13-au .x13-au-edit:hover { background: #163259 !important; color: #fff !important; }
.x13-au .x13-au-seat:hover { background: #14304f !important; }
.x13-au .x13-au-seat[aria-pressed="true"]:hover, .x13-au .x13-au-seat.is-pitch-open:hover { background: #eef3fa !important; }
.x13-au .x13-au-howread:hover { color: #c33d29 !important; }
.x13-au .x13-au-row:hover { background: #faf8f3; }
.x13-au .x13-au-chip:hover { background: #f3eee2 !important; }
.x13-au .x13-au-orders:hover { background: #f0e6d1 !important; }
.x13-au .x13-au-nomtitle:hover { color: #c33d29 !important; }
.x13-au .x13-au-nomby:hover { color: #c33d29 !important; border-bottom-color: #c33d29 !important; }
.x13-au .x13-au-decline:hover { color: #c33d29 !important; }
.x13-au .x13-au-cta:hover { background: #c33d29 !important; }
.x13-au .x13-au-all:hover { background: #163259 !important; color: #fff !important; }
.x13-au .x13-au-hover:hover { background: #faf8f3; }
.x13-au .x13-au-gap:hover { background: rgba(220,179,82,.14); }
/* Round Table.dc.html, light */
.x13-au .rt-light { font-family: 'IBM Plex Sans', sans-serif; background: transparent; color: #16233a; }
.x13-au .rt-light a { color: #16233a; text-decoration: none; }
.x13-au .rt-light a:hover { color: #c33d29; }
@keyframes rtPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(195,61,41,.55); } 50% { box-shadow: 0 0 0 7px rgba(195,61,41,0); } }
/* the artboard's helmet */
@media (max-width: 900px) {
  .x13-au .au-rt { grid-template-columns: 1fr !important; }
  .x13-au .au-side, .x13-au .au-3col { grid-template-columns: 1fr !important; }
  .x13-au .au-4col { grid-template-columns: repeat(2,1fr) !important; }
  .x13-au .au-5col { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 640px) {
  .x13-au .au-2col, .x13-au .au-4col, .x13-au .au-5col { grid-template-columns: 1fr !important; }
  .x13-au .au-order { grid-template-columns: 30px minmax(0,1fr) !important; gap: 4px 14px !important; }
  .x13-au .au-order > span:nth-child(3), .x13-au .au-order > span:nth-child(4) { grid-column: 2 !important; }
}
/* The Edit profile dialog: education and role, then the introduction. */
.x13-au-dialog { max-width: 440px; width: calc(100% - 32px); padding: 0; border: 0; border-top: 3px solid #1a3d74; box-shadow: 0 30px 80px -30px rgba(0,0,0,.5); font-family: 'IBM Plex Sans', sans-serif; color: #16233a; }
.x13-au-dialog::backdrop { background: rgba(20,41,75,.35); }
.x13-au-dialog form { display: flex; flex-direction: column; gap: 12px; padding: 24px 24px 22px; }
.x13-au-dialog h2 { font: 500 22px/1.2 'EB Garamond', serif; color: #1a3d74; margin: 0; }
.x13-au-dialog label { display: flex; flex-direction: column; gap: 5px; font-size: 9px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #6b6963; }
.x13-au-dialog input { font: 400 14px/1.4 'IBM Plex Sans', sans-serif; padding: 9px 10px; border: 1px solid #e6e1d8; color: #16233a; background: #fff; text-transform: none; letter-spacing: 0; }
.x13-au-dialog p { font-size: 12px; color: #67655f; margin: 0; }
.x13-au-dialog .x13-au-dlg-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.x13-au-dialog button { font: 600 10px/1 'IBM Plex Sans', sans-serif; letter-spacing: .14em; text-transform: uppercase; min-height: 40px; padding: 0 16px; cursor: pointer; border: 1px solid #163259; background: #163259; color: #fff; }
.x13-au-dialog button[data-secondary] { background: transparent; color: #163259; }

/* ======================================================================
   FAQ.dc.html and Mobile FAQ.dc.html (19 September bundle)
   ====================================================================== */
.x13-faq a:hover { color: #c33d29; }
/* The answers carry no links today; this is the artboard's own rule for them. */
.x13-faq .x13-faq-a a { color: #1a3d74; text-decoration: underline; text-decoration-color: #87651f; text-underline-offset: 3px; }
.x13-faq .x13-faq-a a:hover { color: #c33d29; }
/* The rail's ink is a state, so it is here rather than inline: the part in
   view is marked by aria-current, which faq.js moves as the reader scrolls. */
.x13-faq .x13-faq-rail-list a { color: #22262d; font-weight: 400; }
.x13-faq .x13-faq-rail-list a[aria-current="true"] { color: #1a3d74; font-weight: 600; }
.x13-faq .x13-faq-rail-list a:hover { color: #c33d29; }
/* the artboard's helmet */
.x13-faq .x13-faq-wrap { display: grid; grid-template-columns: 260px 56px minmax(0,1fr); max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.x13-faq .x13-faq-rail { position: sticky; top: 24px; align-self: start; }
@media (max-width: 1180px) {
  .x13-faq .x13-faq-wrap { display: block; max-width: 720px; }
  .x13-faq .x13-faq-rail { position: static; margin-bottom: 40px; }
  .x13-faq .x13-faq-rail-list { columns: 2; column-gap: 28px; }
}
@media (max-width: 640px) {
  .x13-faq .x13-faq-rail-list { columns: 1; }
}

/* Home Theels band (Armchair Journal.dc.html, 22 September handoff section 3). */
@media (max-width: 860px) {
  .x13-home .ajs-signhead { grid-template-columns: 1fr !important; }
  .x13-home .ajs-rail3 { display: none !important; }
  .x13-home .ajs-flow { grid-template-columns: 1fr !important; gap: 22px !important; }
  .x13-home .ajs-flow > li { padding: 0 !important; }
  .x13-home .ajs-ledger { grid-template-columns: 1fr !important; gap: 18px !important; }
  .x13-home .ajs-ledger .ajs-coin { order: -1; }
  .x13-home .ajs-rail { display: none !important; }
}
.gm-hub-share-sheet{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.gm-hub-share-backdrop{position:absolute;inset:0;background:rgba(36,31,28,.6)}.gm-hub-share-dialog{position:relative;width:min(100%,460px);max-height:90vh;overflow:auto;background:#fffdf7;padding:18px;border:1px solid #dcb352;box-shadow:0 22px 50px rgba(0,0,0,.28)}.gm-hub-share-title{font:600 18px/1.3 'EB Garamond',serif;color:#2b2422}.gm-hub-share-close{float:right;min-width:44px;min-height:44px;color:#a8481c;font-weight:700;cursor:pointer}@media(max-width:699px){.gm-hub-share-sheet{align-items:flex-end;padding:0}.gm-hub-share-dialog{width:100%;border-radius:16px 16px 0 0;padding:20px 16px max(20px,env(safe-area-inset-bottom))}}
.gm-ro-passage{box-sizing:border-box;min-height:240px;height:240px;overflow:auto;display:flex;align-items:center;padding:24px;background:#fffefb;border:3px solid #d6b949;color:#2b2422;font:400 22px/1.6 'EB Garamond',serif}.gm-ro-passage-hand{background:repeating-linear-gradient(#fffefb 0 31px,#b8d4ec 32px,#fffefb 33px);font:400 24px/1.5 'Segoe Print','Comic Sans MS',cursive}.gm-ro-passage-machine{background:#182536;color:#d9e5d9;font:400 19px/1.6 'IBM Plex Mono',monospace}.gm-ro-passage-machine>div::after{content:'▍';animation:gmBlink 1s steps(1) infinite}.gm-ro-choice.gm-ro-hand{background:repeating-linear-gradient(#fffefb 0 26px,#b8d4ec 27px,#fffefb 28px);font-family:'Segoe Print','Comic Sans MS',cursive}.gm-ro-choice.gm-ro-machine{font-family:'IBM Plex Mono',monospace}@keyframes gmBlink{50%{opacity:0}}@media(max-width:699px){.gm-ro-passage{height:220px;min-height:220px;padding:18px;font-size:19px}.gm-ro-passage-hand{font-size:21px}.gm-ro-passage-machine{font-size:16px}}
.gm-ro-passage-hand{font-family:'EB Garamond',serif;font-style:italic}.gm-ro-choice.gm-ro-hand{font-family:'EB Garamond',serif;font-style:italic}

/* Item 40, touch targets. The seats stay the 38px discs the Round Table
   artboard draws; on a phone each one carries a 44px tap area around it. */
@media (max-width: 699px) {
  .aj-rt-seat::after { content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 44px; height: 44px; border-radius: 50%; }
}

/* /sections/ desktop, The other side: round arrows in place of the rail's
   scrollbar (27 September). Outside the column where there is room. The
   theme's button rules would square and colour them, hence !important. */
.x13-sec-rail-wrap { position: relative; }
.x13-sec-rail-wrap .x13-sec-rail { scrollbar-width: none !important; scroll-behavior: smooth; }
.x13-sec-rail-wrap .x13-sec-rail::-webkit-scrollbar { display: none; }
.x13-sec-rail-wrap .x13-sec-rail-nav {
  position: absolute; top: calc(50% - 30px); z-index: 3;
  width: 48px !important; height: 48px !important; min-height: 0 !important; padding: 0 !important;
  border-radius: 50% !important;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff !important; color: #1a3d74 !important; border: 1px solid #dfe3ea !important;
  box-shadow: 0 10px 24px -12px rgba(19, 41, 75, .45) !important;
  cursor: pointer; transition: background .2s, color .2s, box-shadow .2s, opacity .2s, transform .2s;
}
.x13-sec-rail-wrap .x13-sec-rail-nav[hidden] { display: none; }
.x13-sec-rail-wrap .x13-sec-rail-nav:hover { background: #1a3d74 !important; color: #fff !important; border-color: #1a3d74 !important; box-shadow: 0 14px 28px -12px rgba(19, 41, 75, .6) !important; transform: scale(1.05); }
.x13-sec-rail-wrap .x13-sec-rail-nav:focus { outline: none; }
.x13-sec-rail-wrap .x13-sec-rail-nav:focus-visible { outline: 2px solid #c33d29; outline-offset: 3px; }
.x13-sec-rail-wrap .x13-sec-rail-nav:disabled { opacity: .35; cursor: default; pointer-events: none; }
.x13-sec-rail-prev { left: -72px; }
.x13-sec-rail-next { right: -72px; }
@media (max-width: 1280px) {
  .x13-sec-rail-prev { left: 8px; }
  .x13-sec-rail-next { right: 8px; }
}
