/* newsreader-vietnamese-400-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-vietnamese-400-normal.DdKr49mV.woff2) format('woff2'), url(/_astro/newsreader-vietnamese-400-normal.BekUZro8.woff) format('woff');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* newsreader-latin-ext-400-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-latin-ext-400-normal.svq1FPys.woff2) format('woff2'), url(/_astro/newsreader-latin-ext-400-normal.DYA1XoQK.woff) format('woff');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* newsreader-latin-400-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-latin-400-normal.BFBkh4jY.woff2) format('woff2'), url(/_astro/newsreader-latin-400-normal.gRTjlS2D.woff) format('woff');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* newsreader-vietnamese-400-italic */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-vietnamese-400-italic.bZegYFuM.woff2) format('woff2'), url(/_astro/newsreader-vietnamese-400-italic.QbB8kb5s.woff) format('woff');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* newsreader-latin-ext-400-italic */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-latin-ext-400-italic.BMTE_bNQ.woff2) format('woff2'), url(/_astro/newsreader-latin-ext-400-italic.qdgKLcPG.woff) format('woff');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* newsreader-latin-400-italic */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/newsreader-latin-400-italic.CEihAR-f.woff2) format('woff2'), url(/_astro/newsreader-latin-400-italic.CNZoH1hn.woff) format('woff');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* newsreader-vietnamese-700-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/_astro/newsreader-vietnamese-700-normal.DuQcgozP.woff2) format('woff2'), url(/_astro/newsreader-vietnamese-700-normal.DtcFBl0j.woff) format('woff');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* newsreader-latin-ext-700-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/_astro/newsreader-latin-ext-700-normal.Ougc6Dr0.woff2) format('woff2'), url(/_astro/newsreader-latin-ext-700-normal.79d_He5Z.woff) format('woff');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* newsreader-latin-700-normal */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/_astro/newsreader-latin-700-normal.rIgV_oaK.woff2) format('woff2'), url(/_astro/newsreader-latin-700-normal.CluIqIw6.woff) format('woff');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* atkinson-hyperlegible-latin-ext-400-normal */
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.DRk46D-x.woff2) format('woff2'), url(/_astro/atkinson-hyperlegible-latin-ext-400-normal.Bbz-b3yf.woff) format('woff');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* atkinson-hyperlegible-latin-400-normal */
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/_astro/atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2) format('woff2'), url(/_astro/atkinson-hyperlegible-latin-400-normal.BbWidj28.woff) format('woff');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}/* atkinson-hyperlegible-latin-ext-700-normal */
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.BoVPHkS0.woff2) format('woff2'), url(/_astro/atkinson-hyperlegible-latin-ext-700-normal.CKkU2Dpt.woff) format('woff');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* atkinson-hyperlegible-latin-700-normal */
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/_astro/atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2) format('woff2'), url(/_astro/atkinson-hyperlegible-latin-700-normal.BK6Glc0m.woff) format('woff');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}:root {
        color-scheme: light dark;
        --bg: #f6f2ea;
        --ink: #211d18;
        --faint: #7a7264;
        --rule: #d9d1c1;
        --ins-ink: #22573a;
        --ins-wash: #dcead7;
        --del-ink: #8a2a25;
        --del-wash: #f0dcd5;
        --accent: #b0447a;
        --serif: "Newsreader", Georgia, serif;
        --sans: "Atkinson Hyperlegible", sans-serif;
      }
      @media (prefers-color-scheme: dark) {
        :root {
          --bg: #14110f;
          --ink: #e6dfd2;
          --faint: #8d8476;
          --rule: #332d26;
          --ins-ink: #a6d0a9;
          --ins-wash: rgba(74, 140, 90, 0.18);
          --del-ink: #dd9b90;
          --del-wash: rgba(165, 62, 50, 0.2);
          --accent: #d87aa8;
        }
      }
      * { box-sizing: border-box; }
      html { background: var(--bg); }
      body {
        margin: 0;
        color: var(--ink);
        font-family: var(--serif);
        min-height: 100vh;
      }
      astro-island { display: contents; }
      a { color: var(--accent); }

      .wrap { max-width: 56rem; margin: 0 auto; padding: 0 1.25rem 5rem; }

      /* ── masthead: archival folder-tab ─────────────────────────── */
      .masthead {
        padding: 1.4rem 0 0.9rem;
        border-bottom: 3px double var(--rule);
        display: flex;
        align-items: baseline;
        gap: 1rem;
        flex-wrap: wrap;
      }
      .masthead a.back {
        font: 700 0.8rem/1 var(--sans);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        text-decoration: none;
      }
      .masthead a.back:hover { text-decoration: underline; }
      .masthead h1 {
        margin: 0;
        font: 700 1.5rem/1.1 var(--sans);
        letter-spacing: 0.01em;
      }
      .masthead .range {
        margin-left: auto;
        font: 400 0.8rem/1.4 var(--sans);
        color: var(--faint);
        font-variant-numeric: tabular-nums;
      }
      .legend {
        display: flex;
        gap: 1.2rem;
        padding: 0.55rem 0 0;
        font: 400 0.8rem/1.4 var(--sans);
        color: var(--faint);
      }
      .legend ins, .legend del { padding: 0 0.3em; border-radius: 2px; }

      /* ── control strip (sticky) ────────────────────────────────── */
      .pd-controls {
        position: sticky;
        top: 0;
        z-index: 5;
        display: flex;
        align-items: center;
        gap: 0.6rem;
        flex-wrap: wrap;
        padding: 0.7rem 0;
        margin-bottom: 0.4rem;
        background: color-mix(in srgb, var(--bg) 88%, transparent);
        backdrop-filter: blur(6px);
        border-bottom: 1px solid var(--rule);
      }
      .pd-pick { display: inline-flex; align-items: center; gap: 0.45rem; }
      .pd-label {
        font: 700 0.68rem/1 var(--sans);
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--faint);
      }
      .pd select {
        font: 400 0.85rem/1.3 var(--sans);
        font-variant-numeric: tabular-nums;
        color: var(--ink);
        background: transparent;
        border: 1px solid var(--rule);
        border-radius: 4px;
        padding: 0.35rem 0.4rem;
        max-width: 15rem;
      }
      .pd-btn {
        font: 400 0.95rem/1 var(--sans);
        color: var(--ink);
        background: transparent;
        border: 1px solid var(--rule);
        border-radius: 4px;
        padding: 0.3rem 0.6rem;
        cursor: pointer;
      }
      .pd-btn:hover:not(:disabled) { border-color: var(--accent); color: var(--accent); }
      .pd-btn:disabled { opacity: 0.35; cursor: default; }
      .pd-nav { display: inline-flex; gap: 0.25rem; }
      .pd-stats {
        margin-left: auto;
        font: 400 0.82rem/1.4 var(--sans);
        font-variant-numeric: tabular-nums;
        color: var(--faint);
        white-space: nowrap;
      }
      .pd-stats ins { color: var(--ins-ink); background: none; text-decoration: none; }
      .pd-stats del { color: var(--del-ink); text-decoration: none; }

      /* ── version cards ─────────────────────────────────────────── */
      .pd-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
        padding: 0.9rem 0 0.2rem;
      }
      .pd-card {
        font: 400 0.83rem/1.5 var(--sans);
        color: var(--faint);
        border-left: 2px solid var(--rule);
        padding-left: 0.7rem;
      }
      .pd-card strong { color: var(--ink); }
      .pd-card em { display: block; }

      /* ── the redline itself ────────────────────────────────────── */
      .pd-status {
        font: 400 0.9rem/1.5 var(--sans);
        color: var(--faint);
        padding: 3rem 0;
        text-align: center;
        letter-spacing: 0.06em;
      }
      .pd-text {
        font-family: var(--serif);
        font-size: 1.12rem;
        line-height: 1.85;
        white-space: pre-wrap;
        overflow-wrap: break-word;
        max-width: 46rem;
        margin: 1.4rem auto 0;
        animation: settle 0.45s ease both;
      }
      @keyframes settle {
        from { opacity: 0; transform: translateY(6px); }
        to { opacity: 1; transform: none; }
      }
      .pd-text ins {
        background: var(--ins-wash);
        color: var(--ins-ink);
        text-decoration: none;
        border-radius: 2px;
        padding: 0 0.08em;
      }
      .pd-text del {
        background: var(--del-wash);
        color: var(--del-ink);
        text-decoration: line-through;
        text-decoration-color: color-mix(in srgb, var(--del-ink) 55%, transparent);
        border-radius: 2px;
        padding: 0 0.08em;
      }
      .pd-fold {
        display: inline-block;
        font: 400 0.78rem/1.6 var(--sans);
        color: var(--faint);
        background: transparent;
        border: 1px dotted var(--faint);
        border-radius: 999px;
        padding: 0 0.75em;
        margin: 0 0.4em;
        cursor: pointer;
        vertical-align: 0.12em;
        white-space: nowrap;
      }
      .pd-fold:hover { color: var(--accent); border-color: var(--accent); }

      .colophon {
        margin-top: 4rem;
        padding-top: 1rem;
        border-top: 1px solid var(--rule);
        font: 400 0.8rem/1.6 var(--sans);
        color: var(--faint);
      }

      @media (max-width: 40rem) {
        .pd-text { font-size: 1.02rem; line-height: 1.75; }
        .pd-stats { margin-left: 0; }
        .pd-cards { grid-template-columns: 1fr; }
      }