
body {
  margin: 0;
  padding: 0;
  background: #c0b8c8;
  color: #111;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
}

a:link {
  color: #118;
}

a:visited {
  color: #927;
}

a:hover {
  color: #fff;
  background: #118;
}

.pagecont {
  width: 80%;
  margin: 2em auto;
  background: #fff;
  border: solid #3e3e74;
  border-width: 0.6em 1px;
}

.site-head {
  background: #3e3e74;
  color: #fff;
  padding: 0.35em 1em 0.45em;
}

.brand {
  margin: 0;
  color: #fff;
  font: italic 700 1.55em/1 Tahoma, Arial, sans-serif;
  letter-spacing: 0.12em;
}

.brand a {
  color: #fff;
  text-decoration: none;
}

.tagline {
  margin: 0.2em 0 0;
  color: #e7e7f0;
  font-size: 0.9em;
  font-weight: bold;
}

.topnav {
  display: flex;
  gap: 0.15em;
  padding: 0 1em;
  background: #2f6f85;
  border-top: 1px solid #e9e9ef;
  white-space: nowrap;
  font-weight: bold;
  text-transform: uppercase;
}

.topnav a {
  color: #fff;
  padding: 0.25em 0.7em 0.2em;
  text-decoration: none;
}

.topnav a[aria-current="page"] {
  background: #1f5265;
  color: #fff;
  text-decoration: none;
}

.daybody {
  padding: 0.7em 1em 2em;
}

.blinks {
  border-top: solid 3px #448;
  width: 100%;
  margin-bottom: 1.2em;
  padding: 0.3em 0;
  text-align: center;
  font-weight: bold;
}

.summary-strip {
  background: #e7e7de;
  border: 1px solid #f0f0f8;
  margin-bottom: 0.9em;
  padding: 0.35em 0.55em;
  color: #665;
  font-weight: bold;
}

.cluster {
  padding: 0.22em 0 0.9em;
}

.cluster + .cluster {
  margin-top: 0.35em;
}

.cluster-main,
.river-item {
  display: grid;
  grid-template-columns: 5.7em minmax(0, 1fr);
  column-gap: 0.8em;
  padding: 0.08em 0;
}

.cluster-main-stack {
  display: block;
}

.rtime {
  color: #666;
  text-align: right;
  font-size: 0.9em;
  padding-top: 0.1em;
}

.rtime-inline {
  margin: 0 0 0.12em;
  text-align: left;
  font-size: 0.82em;
  padding-top: 0;
}

.headline {
  font-size: 1.08em;
  line-height: 1.25;
}

.headline strong {
  font-weight: bold;
}

cite {
  color: #448;
  font-weight: bold;
  font-size: 0.9em;
  font-style: normal;
}

cite a:link,
cite a:visited {
  color: #448;
}

cite a:hover {
  color: #fff;
  background: #118;
}

.meta {
  color: #666;
  font-size: 0.9em;
}

.cluster-summary {
  margin: 0.08em 0 0;
  color: #444;
  font-size: 0.95em;
  line-height: 1.3;
}

.discussion {
  margin: 0.08em 0 0 1.2em;
  color: #333;
  line-height: 1.25;
}

.discussion summary {
  display: block;
  cursor: pointer;
  list-style: none;
}

.discussion summary::-webkit-details-marker {
  display: none;
}

.discussion summary:before {
  content: "+";
  display: inline-block;
  width: 1em;
  margin-left: -1.25em;
  margin-right: 0.25em;
  border: 1px solid #777;
  background: #eee;
  color: #111;
  font-size: 0.9em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.discussion[open] summary:before {
  content: "-";
}

.discussion-label {
  color: #49692b;
  font-weight: bold;
}

.discussion-sources a {
  font-weight: normal;
}

.discussion-panel {
  margin-top: 0.24em;
  padding: 0.38em 0.55em 0.42em;
  border-left: 0.32em solid #8581aa;
  background: #f0eff7;
}

.discussion-list + .discussion-list {
  margin-top: 0.5em;
}

.discussion-list {
  padding: 0.22em 0.45em 0.3em;
}

.discussion-list-cluster {
  background: #f8f6eb;
  border-left: 0.26em solid #8b7b2e;
}

.discussion-list-related {
  background: #eceaf5;
  border-left: 0.26em solid #6d6692;
}

.discussion-list ul {
  margin: 0.16em 0 0;
  padding: 0;
  list-style: none;
}

.discussion-list li {
  padding: 0.08em 0;
  line-height: 1.25;
}

.discussion-list li:before {
  content: "↳ ";
  color: #666;
}

.discussion-list .source {
  color: #448;
  font-weight: bold;
  font-size: 0.9em;
}

.related-label {
  font-size: 0.84em;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.discussion-list-cluster .related-label {
  color: #6c5b18;
}

.discussion-list-related .related-label {
  color: #55516f;
}

.discussion-list-cluster li:before {
  color: #8b7b2e;
}

.discussion-list-related li:before {
  color: #6d6692;
}

.discussion-list-cluster .source {
  color: #5f531d;
}

.discussion-list-related .source {
  color: #4b4674;
}

.river-day {
  margin: 0 0 1.2em;
}

.river-day h2 {
  margin: 0.25em 0 0.45em;
  color: #333;
  font-size: 1.05em;
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.15em;
}

.river-day ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.river-line {
  display: grid;
  grid-template-columns: 5.6em 1.1em minmax(0, 1fr);
  gap: 0.25em;
  align-items: baseline;
  padding: 0.18em 0;
  line-height: 1.22;
}

.river-line > * {
  min-width: 0;
}

.river-line time {
  color: #555;
  font-size: 0.92em;
  text-align: right;
  white-space: nowrap;
}

.river-line .dot {
  color: #777;
  text-align: center;
}

.river-source,
.river-title {
  font-weight: bold;
}

.river-copy {
  min-width: 0;
}

.empty {
  color: #666;
  font-weight: bold;
}

@media (max-width: 720px) {
  .pagecont {
    width: auto;
    margin: 0;
    border-left: 0;
    border-right: 0;
  }

  .topnav {
    overflow-x: auto;
  }

  .cluster-main {
    grid-template-columns: 4.6em minmax(0, 1fr);
  }

  .cluster-main-stack {
    display: block;
  }

  .river-line {
    grid-template-columns: 4.9em 0.9em minmax(0, 1fr);
    row-gap: 0.05em;
  }

  .discussion {
    margin-left: 5.4em;
  }
}
