/* Page-local enhancements. Load after the existing article styles.
   The wrapper is already included in content/djvu-reader-mac.md.
   No JavaScript, webfonts, fixed overlays, or global resets are required. */
.niraqua-reader-guide {
  --nr-text: #182330;
  --nr-muted: #49596b;
  --nr-link: #0754ad;
  --nr-border: #ccd6e2;
  --nr-surface: #f4f7fb;
  --nr-emphasis: #eef5ff;
  --nr-button-bg: #0754ad;
  --nr-button-text: #ffffff;
  --nr-focus: #975000;
  color: var(--nr-text);
  font-size: 1.0625rem;
  line-height: 1.7;
  max-inline-size: 52rem;
  margin-inline: auto;
  overflow-wrap: break-word;
}
.niraqua-reader-guide,
.niraqua-reader-guide * { box-sizing: border-box; }
.niraqua-reader-guide > * { min-inline-size: 0; }
.niraqua-reader-guide p { margin-block: 1rem; }
.niraqua-reader-guide h2 {
  margin-block: 3rem 1rem;
  font-size: clamp(1.5rem, 2.5vw, 1.85rem);
  line-height: 1.25;
  letter-spacing: -.022em;
  text-wrap: balance;
  color: var(--nr-text);
}
.niraqua-reader-guide h3 {
  margin-block: 1.8rem .65rem;
  font-size: 1.19rem;
  line-height: 1.4;
  letter-spacing: -.01em;
  color: var(--nr-text);
}
.niraqua-reader-guide a:not(.nr-store-badge) {
  color: var(--nr-link);
  text-decoration: underline;
  text-decoration-thickness: .075em;
  text-underline-offset: .17em;
}
.niraqua-reader-guide a:hover { text-decoration-thickness: .12em; }
.niraqua-reader-guide :is(a, [tabindex]):focus-visible {
  outline: 3px solid var(--nr-focus);
  outline-offset: 4px;
  border-radius: 3px;
}
.niraqua-reader-guide .nr-anchor,
.niraqua-reader-guide :is(h2, h3) { scroll-margin-block-start: 6rem; }
.niraqua-reader-guide .nr-anchor { block-size: 0; margin: 0; }
.niraqua-reader-guide .nr-lead {
  font-size: clamp(1.35rem, 3.5vw, 1.75rem);
  line-height: 1.4;
  letter-spacing: -.02em;
  font-weight: 650;
  margin-block-start: .5rem;
  max-inline-size: 37ch;
}
.niraqua-reader-guide .nr-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem 1.1rem;
  padding: 0;
  margin-block: 1.35rem;
  list-style: none;
  font-size: .9375rem;
  line-height: 1.6;
}
.niraqua-reader-guide .nr-benefits li { margin: 0; padding: 0; }
.niraqua-reader-guide .nr-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem 1.25rem;
  margin-block: 1.5rem .75rem;
}
.niraqua-reader-guide .nr-store-badge {
  display: inline-flex;
  align-items: center;
  max-inline-size: 100%;
  border-radius: .5rem;
  text-decoration: none;
}
.niraqua-reader-guide .nr-store-badge:hover {
  opacity: .86;
}
.niraqua-reader-guide .nr-small {
  font-size: .875rem;
  line-height: 1.65;
  color: var(--nr-muted);
}
.niraqua-reader-guide .nr-note {
  margin-block: 1.25rem;
  padding: .75rem 1rem;
  border-inline-start: .25rem solid var(--sl-color-accent);
  border-radius: .25rem;
  background: var(--sl-color-gray-6);
  font-size: .9375rem;
}
.niraqua-reader-guide .guide-capture {
  display: block;
  margin: 1.75rem 0;
  inline-size: 100%;
  max-inline-size: 100%;
}
.niraqua-reader-guide .capture-image {
  display: block;
  border-radius: .8rem;
}
.niraqua-reader-guide .guide-capture img {
  display: block;
  inline-size: 100%;
  max-inline-size: 100%;
  block-size: auto;
  aspect-ratio: 8 / 5;
  object-fit: contain;
  border: 1px solid var(--nr-border);
  border-radius: .8rem;
  background: var(--nr-surface);
  color: var(--nr-muted);
  font-size: .875rem;
}
.niraqua-reader-guide figcaption {
  margin-block-start: .55rem;
  color: var(--nr-muted);
  font-size: .875rem;
  line-height: 1.6;
}
.niraqua-reader-guide .guide-steps {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 1.1rem;
  margin-block: 1.5rem;
}
.niraqua-reader-guide .guide-steps .guide-capture { margin: 0; }
.niraqua-reader-guide .nr-table-region {
  inline-size: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  border: 1px solid var(--nr-border);
  border-radius: .8rem;
  margin-block: 1.35rem;
}
.niraqua-reader-guide .nr-comparison {
  inline-size: 100%;
  min-inline-size: 38rem;
  border-collapse: collapse;
  font-size: .9375rem;
  line-height: 1.6;
  margin: 0;
  display: table;
}
.niraqua-reader-guide .nr-comparison caption {
  text-align: start;
  padding: .85rem 1rem;
  background: var(--nr-surface);
  color: var(--nr-muted);
  font-size: .875rem;
  font-weight: 600;
}
.niraqua-reader-guide .nr-comparison :is(th, td) {
  border: 0;
  border-block-start: 1px solid var(--nr-border);
  padding: .9rem 1rem;
  text-align: start;
  vertical-align: top;
}
.niraqua-reader-guide .nr-comparison thead th { font-weight: 650; }
.niraqua-reader-guide .nr-comparison th[scope="row"] { inline-size: 22%; }
.niraqua-reader-guide .nr-comparison td { inline-size: 39%; }
.niraqua-reader-guide .nr-comparison .nr-featured-row { background: var(--nr-emphasis); }
.niraqua-reader-guide .nr-feature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-block: 1.35rem;
}
.niraqua-reader-guide .nr-feature-grid > div {
  padding: 1.2rem;
  border: 1px solid var(--nr-border);
  border-radius: .8rem;
  background: var(--nr-surface);
}
.niraqua-reader-guide .nr-feature-grid dt {
  margin-block-end: .5rem;
  font-weight: 650;
  line-height: 1.45;
}
.niraqua-reader-guide .nr-feature-grid dd {
  margin: 0;
  font-size: .9375rem;
  line-height: 1.7;
}
.niraqua-reader-guide .nr-purchase-panel {
  padding: 1.5rem;
  border: 1px solid var(--nr-border);
  border-radius: 1rem;
  background: var(--nr-emphasis);
  margin-block: 1.75rem;
}
.niraqua-reader-guide .nr-purchase-panel p:first-child {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-block-start: 0;
}
.niraqua-reader-guide .nr-purchase-panel .nr-store-badge { margin-block-start: .3rem; }
.niraqua-reader-guide .nr-purchase-panel-final { margin-block-end: 0; }
@media (max-width: 620px) {
  .niraqua-reader-guide .nr-feature-grid,
  .niraqua-reader-guide .guide-steps { grid-template-columns: 1fr; }
  .niraqua-reader-guide .nr-actions { align-items: stretch; }
  .niraqua-reader-guide .nr-purchase-panel { padding: 1.15rem; }
}
@media (prefers-color-scheme: dark) {
  .niraqua-reader-guide {
    --nr-text: #e9edf3;
    --nr-muted: #b8c4d3;
    --nr-link: #93c5fd;
    --nr-border: #445164;
    --nr-surface: #182230;
    --nr-emphasis: #172c44;
    --nr-button-bg: #acd3ff;
    --nr-button-text: #0f1b2b;
    --nr-focus: #ffd38c;
  }
}
/* Honor an explicit site theme over the operating-system preference. */
:is(html[data-theme="dark"], html.dark) .niraqua-reader-guide {
  --nr-text: #e9edf3;
  --nr-muted: #b8c4d3;
  --nr-link: #93c5fd;
  --nr-border: #445164;
  --nr-surface: #182230;
  --nr-emphasis: #172c44;
  --nr-button-bg: #acd3ff;
  --nr-button-text: #0f1b2b;
  --nr-focus: #ffd38c;
}
:is(html[data-theme="light"], html.light) .niraqua-reader-guide {
  --nr-text: #182330;
  --nr-muted: #49596b;
  --nr-link: #0754ad;
  --nr-border: #ccd6e2;
  --nr-surface: #f4f7fb;
  --nr-emphasis: #eef5ff;
  --nr-button-bg: #0754ad;
  --nr-button-text: #ffffff;
  --nr-focus: #975000;
}
@media (forced-colors: active) {
  .niraqua-reader-guide :is(a, [tabindex]):focus-visible { outline-color: Highlight; }
}
@media print {
  .niraqua-reader-guide {
    --nr-text: #000000;
    --nr-muted: #333333;
    --nr-link: #000000;
    --nr-border: #999999;
    --nr-surface: #ffffff;
    --nr-emphasis: #ffffff;
    --nr-button-bg: #ffffff;
    --nr-button-text: #000000;
    font-size: 10pt;
    max-inline-size: none;
  }
  .niraqua-reader-guide .nr-table-region { overflow: visible; }
  .niraqua-reader-guide .nr-comparison { min-inline-size: 0; font-size: 9pt; }
  .niraqua-reader-guide .guide-steps { grid-template-columns: 1fr 1fr; }
  .niraqua-reader-guide :is(h2, h3) { break-after: avoid; }
  .niraqua-reader-guide :is(figure, .nr-purchase-panel, .nr-feature-grid > div) { break-inside: avoid; }
}

.niraqua-reader-guide .nr-store-badge picture,
.niraqua-reader-guide .nr-store-badge img { display: block; }
.niraqua-reader-guide .nr-store-badge img { inline-size: auto; block-size: 40px; }
