.edition-entry {
  margin: 25px 0;
  padding: 18px 22px;
  color: #272c27;
  background: #f3f6f0;
  border-left: 3px solid #668169;
  border-radius: 2px;
}
.edition-entry h2 { margin: 0 0 7px; font-size: 1.2rem; }
.edition-entry p, .edition-city p { line-height: 1.85; }
.edition-entry p { margin: 0 0 7px; }
.edition-entry a, .edition-study a, .edition-city a, #nagasaki-directory-comparison a {
  color: #325a45; text-decoration: underline; text-underline-offset: .18em;
}
.edition-city h3 { margin: 1.4em 0 .4em; font-size: 1.12rem; }
.edition-table { overflow-x: auto; max-width: 100%; margin: 1em 0; }
.edition-table table { width: 100%; min-width: 35rem; border-collapse: collapse; font-size: .95rem; line-height: 1.65; }
.edition-table caption { text-align: left; padding: 0 0 .6em; color: #424f43; }
.edition-table th, .edition-table td { padding: .65em .7em; border-bottom: 1px solid #d8ded7; text-align: left; vertical-align: top; }
.edition-table thead th, .edition-table tfoot { color: #294536; background: #eef3eb; }
.edition-study .edition-table td { text-align: right; font-variant-numeric: tabular-nums; }
.edition-city .edition-table th:first-child { min-width: 8em; }
.edition-links { display: flex; flex-wrap: wrap; gap: .4em 1.2em; }
.edition-note { font-size: .9rem; line-height: 1.7; color: #515c52; }
#nagasaki-directory-comparison { margin: .4em 0 .15em; }
@media (max-width: 640px) {
  .edition-entry { padding: 14px 16px; }
  .edition-city .edition-table table { min-width: 40rem; }
}
