/* Publication typography and business-magazine identity. */
html,
body {
  background: #fff;
  color: #202020;
}

#publication {
  --np-bg: #fff;
  --np-ink: #202020;
  --np-sub: #565656;
  --np-line: #d9d9d6;
  --np-soft: #f5f5f3;
  --np-accent: #a52a2a;
  --np-title: 'World Picks Sans', 'Noto Sans JP', 'Yu Gothic', Meiryo, sans-serif;
  font-family: var(--np-title);
  font-size: 16px;
  line-height: 1.8;
  color-scheme: light;
  overflow-wrap: anywhere;
}

#publication h1,
#publication h2,
#publication h3 {
  font-family: var(--np-title);
  font-weight: 700;
  letter-spacing: -.035em;
}

#publication h1 {
  font-weight: 800;
}

#publication p {
  color: var(--np-sub);
}

#publication a:focus-visible,
#publication button:focus-visible,
#publication summary:focus-visible {
  outline-color: var(--np-accent);
}

#publication header {
  padding: 28px 38px 0;
}

#publication .mast {
  gap: 28px;
  padding-bottom: 24px;
}

#publication .brand {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: .16em;
  padding-left: 16px;
  min-height: 44px;
  font-family: 'World Picks Brand', 'Barlow Condensed', Impact, sans-serif;
  font-size: 62px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -.025em;
  white-space: nowrap;
  color: var(--np-ink);
}

#publication .brand::before {
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  bottom: 3px;
  width: 6px;
  background: var(--np-accent);
}

#publication .brand span {
  color: var(--np-accent);
}

#publication .brand:hover {
  text-decoration: none;
}

#publication .mast .small {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.8;
}

#publication .primary-nav {
  align-items: center;
  gap: 0 26px;
  padding: 5px 0;
  border-block: 1px solid var(--np-ink);
  font-size: 13px;
  font-weight: 500;
}

#publication .primary-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0;
}

#publication .nav-current {
  color: var(--np-accent);
}

#publication .primary-nav a[aria-current],
#publication .topic-nav a[aria-current],
#publication footer a[aria-current],
#publication .topic-filters a[aria-current] {
  color: var(--np-accent);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 7px;
  text-decoration-thickness: 2px;
}

#publication .home-entry-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 20px;
}

#publication .home-entry-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--np-accent);
  font-weight: 500;
}

#publication .latest-section {
  padding-bottom: 28px;
}

#publication #latest-title {
  scroll-margin-top: 24px;
}

#publication .topic-nav {
  border-bottom-color: var(--np-line);
}

#publication .topic-menu summary {
  min-height: 48px;
  padding: 12px 16px;
  font-size: 13px;
  line-height: 1.8;
}

#publication .topic-menu[data-current-group="true"] > summary {
  color: var(--np-accent);
  box-shadow: inset 0 -2px var(--np-accent);
}

#publication .topic-published {
  display: block;
  margin-bottom: 8px;
  color: var(--np-sub);
  font-size: 12px;
  line-height: 1.8;
}

#publication .topic-menu:first-child summary {
  padding-left: 0;
}

#publication .topic-menu:last-child summary {
  padding-right: 0;
}

#publication .chevron {
  width: 24px;
  height: 24px;
  color: var(--np-sub);
}

#publication .chevron::before {
  width: 8px;
  height: 8px;
  border-width: 1.5px;
}

#publication .topic-dropdown {
  border-top: 1px solid var(--np-line);
  box-shadow: 0 8px 20px #0000000c;
}

#publication .topic-dropdown a,
#publication .topic-dropdown .topic-unavailable {
  min-height: 44px;
  font-size: 13px;
}

#publication .eyebrow,
#publication .label {
  font-size: 11px;
  line-height: 1.7;
  font-weight: 700;
  letter-spacing: .06em;
}

#publication .article-tags,
#publication .path-tags,
#publication .topic-filters {
  gap: 4px 14px;
}

#publication .article-tags a,
#publication .path-tags a,
#publication .topic-filters a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  max-width: 100%;
  padding: 5px 0;
  border: 0;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: .01em;
  color: var(--np-accent);
  overflow-wrap: anywhere;
}

#publication .article-tags a:hover,
#publication .path-tags a:hover,
#publication .topic-filters a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

#publication .topic-filters a[aria-current=page] {
  background: none;
  color: var(--np-accent);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 5px;
}

#publication .editorial-home {
  padding: 0 38px 36px;
}

#publication .publication-promise {
  padding: 12px 0;
  font-size: 12px;
  line-height: 1.8;
}

#publication .publication-promise > a {
  font-weight: 500;
}

#publication .home-opening {
  grid-template-columns: minmax(0, 1.62fr) minmax(0, 1fr);
  gap: 36px;
  padding: 30px 0 38px;
}

#publication .home-opening > .lead-story {
  gap: 0;
}

#publication .home-opening .lead-story h1 {
  margin: 12px 0;
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1.55;
}

#publication .home-opening .lead-story p {
  max-width: 40em;
  margin: 18px 0;
  font-size: 14px;
  line-height: 1.95;
}

#publication .home-opening .lead-story time {
  margin: 10px 0 18px;
  font-size: 11px;
  letter-spacing: .01em;
}

#publication .home-opening .article-tags {
  margin: 4px 0 6px;
}

#publication .home-opening .article-tags a {
  min-height: 44px;
}

#publication .cover-link {
  background: var(--np-soft);
}

#publication .cover-link img,
#publication .article-filters button,
#publication .article-toc summary span {
  transition: none;
}

#publication .cover-link:hover img {
  transform: none;
}

#publication .read-link,
#publication .reading-path-link,
#publication .back {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.8;
  color: var(--np-accent);
}

#publication .read-link {
  border-bottom: 0;
}

#publication .home-opening .read-link {
  align-self: flex-start;
  min-height: 46px;
  margin-top: 2px;
  padding: 12px 0 2px;
}

#publication .reader-quickstart {
  padding-left: 28px;
}

#publication .reader-quickstart h2 {
  margin: 12px 0 20px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -.04em;
}

#publication .quickstart-links {
  counter-reset: reading-choice;
}

#publication .quickstart-links li {
  counter-increment: reading-choice;
  border-top: 1px solid var(--np-line);
  border-bottom: 0;
}

#publication .quickstart-links li:last-child {
  border-bottom: 1px solid var(--np-line);
}

#publication .quickstart-links a {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 14px;
  gap: 9px;
  min-height: 66px;
  padding: 13px 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.7;
}

#publication .quickstart-links a::before {
  content: counter(reading-choice, decimal-leading-zero);
  font-family: 'World Picks Brand', 'Barlow Condensed', sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--np-accent);
}

#publication .feature-heading,
#publication .reader-problems,
#publication .latest-section {
  border-top: 1px solid var(--np-ink);
  padding-top: 26px;
}

#publication .feature-heading > .eyebrow,
#publication .reader-problems > .eyebrow {
  border-left: 3px solid var(--np-accent);
  padding-left: 8px;
}

#publication .feature-heading h2,
#publication .reader-problems > h2,
#publication .latest-section > h2 {
  margin: 10px 0 24px;
  font-size: 27px;
  line-height: 1.5;
  letter-spacing: -.035em;
}

#publication .feature-stories {
  margin: 24px 0 38px;
}

#publication .feature-stories .cover-link {
  margin-bottom: 8px;
}

#publication .feature-stories .article-tags {
  margin: 0 0 4px;
}

#publication .feature-stories h3 {
  margin: 8px 0 12px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.65;
}

#publication .feature-stories p {
  margin: 0 0 12px;
  font-size: 13px;
  line-height: 1.95;
}

#publication .reader-problems {
  padding-bottom: 36px;
}

#publication .reading-paths {
  gap: 24px;
  margin: 24px 0 0;
}

#publication .reading-path-card {
  border-top: 1px solid var(--np-line);
  padding: 16px 0 8px;
  gap: 12px;
}

#publication .reading-path-copy h2,
#publication .reading-path-copy h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: -.025em;
}

#publication .reading-path-copy p {
  margin: 12px 0 0;
  font-size: 13px;
  line-height: 1.9;
}

#publication .reading-path-card > .path-tags {
  margin-top: auto;
}

#publication .reading-path-card .path-action {
  margin-top: 0;
}

#publication .article-filters {
  gap: 8px;
  margin: 18px 0;
}

#publication .article-filters button {
  min-height: 44px;
  font-size: 12px;
  font-weight: 500;
}

#publication .latest-articles li {
  padding: 24px 0;
}

#publication .latest-articles a {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: -.025em;
}

#publication .article-card-copy {
  display: block;
  min-width: 0;
}

#publication .article-card-title {
  display: block;
}

#publication .article-card-description {
  display: block;
  margin-top: 8px;
  color: var(--np-sub);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: 0;
}

#publication .latest-category {
  font-size: 11px;
  line-height: 1.8;
  font-weight: 500;
  letter-spacing: .01em;
}

#publication .latest-articles time,
#publication .latest-count {
  font-size: 12px;
}

#publication .reader {
  max-width: 790px;
  padding: 32px 32px 48px;
}

#publication .reader h1 {
  margin: 20px 0;
  font-size: 36px;
  font-weight: 800;
  line-height: 1.6;
  letter-spacing: -.04em;
}

#publication .reader .intro {
  font-size: 18px;
  line-height: 1.95;
  color: var(--np-sub);
}

#publication .reader p,
#publication .reader > ul,
#publication .reader > ol {
  font-size: 17px;
  line-height: 2.05;
  color: var(--np-ink);
}

#publication .reader p {
  margin: 22px 0;
}

#publication .reader a {
  color: var(--np-accent);
}

#publication .reader .back,
#publication .reader .article-tags a {
  text-decoration: none;
}

#publication .reader h2 {
  margin: 38px 0 18px;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: -.03em;
}

#publication .reader > h2 {
  border-top: 0;
  border-left: 3px solid var(--np-accent);
  padding: 0 0 0 14px;
  margin-top: 44px;
}

#publication .reader > h3 {
  font-family: var(--np-title);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.75;
  margin: 28px 0 14px;
}

#publication .reader .byline {
  margin: 24px 0;
  padding: 12px 0;
  font-size: 12px;
  line-height: 1.9;
  color: var(--np-sub);
}

#publication .article-toc {
  border-block: 1px solid var(--np-line);
  margin: 30px 0;
}

#publication .article-toc summary {
  min-height: 48px;
  font-size: 13px;
  line-height: 1.8;
}

#publication .article-toc ol {
  font-size: 14px;
  line-height: 1.85;
}

#publication .article-toc a,
#publication .reader .article-toc ul a {
  display: block;
  min-height: 44px;
  padding: 9px 0;
  line-height: 1.85;
}

#publication .reader .article-toc ul {
  font-size: 13px;
}

#publication .reader table {
  font-size: 15px;
  line-height: 1.9;
}

#publication .reader th,
#publication .reader td {
  padding: 12px;
}

#publication .reader thead {
  background: var(--np-soft);
}

#publication .reader th {
  font-weight: 700;
}

#publication .reader .article-figure {
  padding: 22px;
  border: 1px solid var(--np-line);
  background: #fafaf8;
}

#publication .article-figure figcaption > strong {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
}

#publication .reader .figure-note,
#publication .reader .related .connection,
#publication .reader .figure-cards p {
  font-size: 14px;
  line-height: 1.9;
  color: var(--np-sub);
}

#publication .related {
  margin-top: 44px;
  border-top: 1px solid var(--np-ink);
  padding-top: 24px;
}

#publication .reader .related h2 {
  font-size: 23px;
}

#publication .reader .related h3 {
  font-size: 19px;
  line-height: 1.7;
  letter-spacing: -.025em;
}

#publication .simple {
  max-width: 790px;
  padding: 36px 32px 60px;
}

#publication .simple h1,
#publication .archive h1 {
  font-size: 34px;
  line-height: 1.6;
  font-weight: 800;
  letter-spacing: -.04em;
}

#publication .simple h2,
#publication .archive h2 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.65;
}

#publication .simple p,
#publication .simple > ul,
#publication .simple > ol,
#publication .archive > p {
  font-size: 17px;
  line-height: 2;
}

#publication .simple.guide-index {
  max-width: 1120px;
}

#publication .guide-index-jumps {
  border-block: 1px solid var(--np-line);
  padding-block: 20px;
  margin-block: 28px;
}

#publication .guide-index-jumps h2 {
  margin-top: 0;
  font-size: 18px;
}

#publication .guide-index-jumps ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  padding: 0;
  list-style: none;
}

#publication .guide-index-jumps a {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 0;
  font-size: 14px;
  line-height: 1.7;
}

#publication .guide-index .reading-path-card {
  scroll-margin-top: 16px;
}

@media (min-width: 700px) {
  #publication .guide-index-jumps ul {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

#publication .guide-index .reading-path-copy h2 {
  margin-top: 0;
  font-size: 18px;
  line-height: 1.7;
}

#publication .guide-index .reading-path-copy p {
  font-size: 13px;
  line-height: 1.9;
}

#publication .reading-steps h2 {
  font-size: 24px;
  line-height: 1.65;
}

#publication .reading-steps .read-link {
  display: inline-flex;
  min-height: 44px;
  font-size: 13px;
}

#publication .guide-branches {
  border-top: 1px solid var(--np-ink);
}

#publication .guide-branches h3 {
  font-size: 20px;
  line-height: 1.7;
}

#publication .guide-branches .connection {
  font-size: 14px;
  line-height: 1.9;
}

#publication .reader .guide-context p {
  font-size: 15px;
  line-height: 1.9;
}

#publication .archive {
  max-width: 1120px;
  padding: 36px 38px 48px;
}

#publication .archive-filters,
#publication .pagination {
  gap: 8px 24px;
  padding: 10px 0;
  border-color: var(--np-line);
}

#publication .archive-filters a,
#publication .pagination a,
#publication .archive-link a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 13px;
}

#publication .archive-filters [aria-current],
#publication .archive-link a {
  color: var(--np-accent);
}

#publication .search-controls label {
  font-size: 14px;
  font-weight: 700;
}

#publication input[type=search],
#publication .search-refine select,
#publication .search-refine button {
  border-color: #878783;
  font-family: var(--np-title);
}

#publication .search-controls .search-help {
  font-size: 13px;
  line-height: 1.9;
}

#publication [data-search-more],
#publication [data-search-retry] {
  min-height: 44px;
  padding: 12px 18px;
  border: 1px solid var(--np-accent);
  background: var(--np-bg);
  color: var(--np-accent);
  font: inherit;
  font-size: 14px;
  cursor: pointer;
}

#publication [data-search-more] {
  margin: 12px 0;
}

#publication [data-search-more]:hover,
#publication [data-search-retry]:hover {
  background: var(--np-soft);
}

#publication [data-search-more]:focus-visible,
#publication [data-search-retry]:focus-visible {
  outline: 2px solid var(--np-accent);
  outline-offset: 4px;
}

#publication .search-browse {
  display: block;
  margin: 20px 0;
  padding: 14px 0;
  border-top: 1px solid var(--np-line);
  font-size: 14px;
  line-height: 2;
}

#publication .search-browse a {
  display: inline-block;
  min-height: 44px;
  padding: 8px 0;
  color: var(--np-accent);
}

#publication .search-browse p {
  margin: 0;
  font-size: 14px;
}

#publication [data-search-count],
#publication [data-search-load-error] {
  line-height: 1.9;
}

#publication .search-results h2,
#publication .article-list h2 {
  font-size: 22px;
  line-height: 1.7;
  letter-spacing: -.025em;
}

#publication .search-results .search-description,
#publication .search-results .search-match {
  font-size: 14px;
  line-height: 1.9;
  color: var(--np-sub);
}

#publication footer {
  padding: 24px 38px;
  border-top-color: var(--np-ink);
  font-size: 12px;
  line-height: 1.9;
}

#publication footer a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin: 0 18px 4px 0;
}

@media (min-width: 651px) and (max-width: 900px) {
  #publication header,
  #publication .archive {
    padding-right: 28px;
    padding-left: 28px;
  }

  #publication .editorial-home {
    padding-right: 28px;
    padding-left: 28px;
  }

  #publication .brand {
    font-size: 54px;
  }

  #publication .mast .small {
    font-size: 11px;
  }

  #publication .home-opening {
    gap: 28px;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  }

  #publication .home-opening .lead-story h1 {
    font-size: 30px;
  }

  #publication .reader-quickstart {
    padding-left: 22px;
  }

  #publication .reader-quickstart h2 {
    font-size: 23px;
  }

  #publication .quickstart-links a {
    grid-template-columns: minmax(0, 1fr) 14px;
    font-size: 12px;
  }

  #publication .quickstart-links a::before {
    display: none;
  }

  #publication .feature-stories {
    gap: 18px;
  }
}

@media (max-width: 650px) {
  #publication header {
    padding: 14px 20px 0;
  }

  #publication .mast {
    gap: 6px;
    padding-bottom: 12px;
  }

  #publication .brand {
    font-size: 52px;
    padding-left: 14px;
  }

  #publication .brand::before {
    width: 5px;
    top: 4px;
    bottom: 2px;
  }

  #publication .mast .small {
    font-size: 11px;
    line-height: 1.8;
  }

  #publication .mast .small br {
    display: none;
  }

  #publication .primary-nav {
    gap: 0 16px;
    font-size: 12px;
    padding: 4px 0;
  }

  #publication .primary-nav a {
    padding: 0;
    min-height: 44px;
  }

  #publication .mobile-topics-toggle:not([hidden]) {
    min-height: 44px;
    padding: 10px 0;
    font-size: 12px;
    font-weight: 500;
  }

  #publication .topic-menu summary,
  #publication .topic-menu:first-child summary,
  #publication .topic-menu:last-child summary {
    min-height: 44px;
    padding: 10px 0;
    font-size: 13px;
  }

  #publication .topic-dropdown {
    box-shadow: none;
    border: 0;
    border-left: 1px solid var(--np-line);
  }

  #publication .editorial-home {
    padding: 0 20px 28px;
  }

  #publication .publication-promise {
    gap: 4px 20px;
    padding: 10px 0;
    font-size: 12px;
  }

  #publication .home-opening {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding: 24px 0 32px;
  }

  #publication .home-opening > .lead-story {
    gap: 0;
  }

  #publication .home-opening .lead-story h1 {
    font-size: 28px;
    line-height: 1.6;
  }

  #publication .home-opening .lead-story p {
    font-size: 14px;
    margin: 14px 0;
  }

  #publication .reader-quickstart {
    border-left: 0;
    border-top: 1px solid var(--np-ink);
    padding: 22px 0 0;
  }

  #publication .reader-quickstart h2 {
    font-size: 23px;
    margin-bottom: 16px;
  }

  #publication .quickstart-links a {
    min-height: 56px;
    grid-template-columns: minmax(0, 1fr) 14px;
    font-size: 13px;
    padding: 13px 0;
  }

  #publication .quickstart-links a::before {
    display: none;
  }

  #publication .feature-heading h2,
  #publication .reader-problems > h2,
  #publication .latest-section > h2 {
    font-size: 25px;
    line-height: 1.6;
    margin-bottom: 20px;
  }

  #publication .feature-stories {
    gap: 26px;
  }

  #publication .feature-stories h3 {
    font-size: 20px;
    line-height: 1.7;
  }

  #publication .feature-stories p {
    font-size: 14px;
    line-height: 1.9;
  }

  #publication .reading-paths {
    gap: 16px;
  }

  #publication .reading-path-copy h2,
  #publication .reading-path-copy h3,
  #publication .guide-index .reading-path-copy h2 {
    font-size: 19px;
    line-height: 1.7;
  }

  #publication .reading-path-copy p,
  #publication .guide-index .reading-path-copy p {
    font-size: 14px;
    line-height: 1.9;
  }

  #publication .reading-path-card > .path-tags {
    margin-top: 0;
  }

  #publication .latest-articles a {
    font-size: 19px;
    line-height: 1.7;
  }

  #publication .reader {
    padding: 24px 22px 40px;
  }

  #publication .reader h1 {
    font-size: 29px;
    line-height: 1.65;
  }

  #publication .reader .intro {
    font-size: 17px;
  }

  #publication .reader p,
  #publication .reader > ul,
  #publication .reader > ol {
    font-size: 17px;
    line-height: 2;
  }

  #publication .reader h2 {
    font-size: 23px;
    line-height: 1.75;
  }

  #publication .reader > h3 {
    font-size: 19px;
  }

  #publication .reader th,
  #publication .reader td {
    padding: 10px 8px;
  }

  #publication .reader table {
    font-size: 14px;
  }

  #publication .reader .article-figure {
    padding: 18px 14px;
  }

  #publication .reader .related h3 {
    font-size: 20px;
  }

  #publication .simple,
  #publication .archive {
    padding: 28px 20px 48px;
  }

  #publication .simple h1,
  #publication .archive h1 {
    font-size: 28px;
    line-height: 1.65;
  }

  #publication .simple h2,
  #publication .archive h2,
  #publication .reading-steps h2 {
    font-size: 23px;
    line-height: 1.7;
  }

  #publication .search-results h2,
  #publication .article-list h2 {
    font-size: 20px;
    line-height: 1.7;
  }

  #publication .guide-branches h3 {
    font-size: 20px;
  }

  #publication footer {
    padding: 22px 20px;
  }
}

@media (max-width: 350px) {
  #publication .brand {
    font-size: 45px;
  }

  #publication .home-opening .lead-story h1,
  #publication .reader h1,
  #publication .simple h1,
  #publication .archive h1 {
    font-size: 27px;
  }
}

#publication .reading-path-copy > .reading-path-label {
  margin: 0;
  color: var(--np-accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
}

#publication .reading-path-copy > .reading-path-label + h2,
#publication .reading-path-copy > .reading-path-label + h3 {
  margin-top: 6px;
}

#publication .quickstart-label,
#publication .quickstart-title {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

#publication .quickstart-label {
  color: var(--np-accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
}

#publication .quickstart-title {
  color: var(--np-ink);
  line-height: 1.8;
}

#publication .reader .article-sharing {
  margin-top: 36px;
  padding-top: 20px;
  border-top: 1px solid var(--np-line);
}

#publication .reader .article-sharing h2 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.8;
}

#publication .reader .article-sharing .sharing-help,
#publication .reader .article-sharing .sharing-status {
  margin: 6px 0;
  font-size: 13px;
  line-height: 1.8;
  color: var(--np-sub);
}

#publication .sharing-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
}

#publication .sharing-actions button {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.8;
  color: var(--np-accent);
  cursor: pointer;
}

#publication .sharing-actions button:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

#publication .sharing-actions button:disabled {
  color: var(--np-sub);
  cursor: wait;
}

#publication .reader .article-sharing .sharing-url {
  display: inline-block;
  max-width: 100%;
  padding: 10px 0;
  min-height: 44px;
  font-size: 12px;
  line-height: 1.8;
  color: var(--np-accent);
  overflow-wrap: anywhere;
}

#publication .sharing-status {
  min-height: 1.8em;
}

#publication .article-start,
#publication .guide-entry,
#publication .feed-registration {
  border-block: 1px solid var(--np-line);
  padding: 20px 0;
  margin-block: 28px;
}
#publication .article-start h2,
#publication .guide-entry h2 {
  margin-top: 0;
}
#publication .guide-entry li + li {
  margin-top: 18px;
}
#publication .guide-entry li p {
  margin-top: 6px;
}
#publication .feed-registration a {
  overflow-wrap: anywhere;
}
#publication .feed-registration button {
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid var(--np-accent);
  background: #fff;
  color: var(--np-accent);
  font: inherit;
  cursor: pointer;
}
#publication .feed-registration button:focus-visible {
  outline: 2px solid var(--np-accent);
  outline-offset: 3px;
}
#publication .feed-status {
  min-height: 1.8em;
}
