.report-disclosure {
  margin: 16px 0;
}

.report-disclosure > summary {
  width: fit-content;
  min-height: 44px;
  align-content: center;
  color: #405a50;
  font-size: .95rem;
  cursor: pointer;
}

.report-disclosure .report-card {
  margin-top: 6px;
}

.app-nav {
  flex-wrap: wrap;
}

.reference-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 8px 12px;
  margin: 22px 0 18px;
}

.reference-filters label {
  flex: 1 1 220px;
  font-weight: 700;
}

.reference-filters input[type="search"],
.reference-filters select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  margin-top: 4px;
  padding: 8px 12px;
  border: 1px solid #96b0a3;
  border-radius: 9px;
  background: #f8fcf9;
}

.reference-filters button {
  min-height: 44px;
  padding: 8px 18px;
  border: 0;
  border-radius: 9px;
  background: #075d45;
  color: #fff;
}

.reference-filters a,
.reference-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

.reference-results {
  display: grid;
  gap: 10px;
}

.info-card .reference-item {
  padding: 14px 16px;
  border: 1px solid #d4e3da;
  border-radius: 12px;
}

.reference-item h2 {
  margin: 0 0 4px;
}

.reference-item p {
  margin: 0 0 6px;
}

.reference-item .reference-note,
.reference-filters a {
  color: #496357;
  font-size: .875rem;
}

.reference-value {
  margin-inline: 8px;
  color: #144b3d;
  font-size: 1.2rem;
}

.reference-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0 16px;
}

.price-history {
  display: grid;
  gap: 9px;
  padding: 0;
  list-style: none;
}

.price-history li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 4px 10px;
}

.price-bar {
  grid-column: 1 / -1;
  height: 7px;
  border-radius: 8px;
  background: #e8f2ec;
}

.price-bar::before {
  display: block;
  width: var(--price-share);
  height: 100%;
  border-radius: inherit;
  background: #43876e;
  content: "";
}

.news-headlines {
  margin-block: 20px;
}

.info-card .news-story {
  padding: 0;
  overflow: hidden;
  border: 1px solid #cfe2d7;
  border-radius: 15px;
  background: #f5faf7;
}

.news-story summary {
  display: grid;
  grid-template-columns: 1fr 30px;
  gap: 4px 10px;
  align-items: center;
  padding: 13px 16px;
  list-style: none;
}

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

.news-story summary::after {
  display: grid;
  grid-column: 2;
  grid-row: 1 / 3;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #d9eee1;
  color: #155741;
  content: "+";
}

.news-story[open] summary::after {
  content: "−";
}

.news-story summary:hover,
.news-story summary:focus-visible {
  background: #e8f4ed;
}

.news-story summary:focus-visible {
  outline: 2px solid #155741;
  outline-offset: -2px;
}

.news-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  color: #486257;
  font-size: .8rem;
}

.news-meta strong {
  padding: 2px 8px;
  border-radius: 100px;
  background: #f4e8b7;
  color: #544006;
}

.news-title {
  grid-column: 1;
  color: #193c30;
}

.news-detail {
  padding: 0 16px 14px;
}

.news-detail p {
  margin: 0 0 4px;
}
