.evidence-library {
  background: #f5f7f6;
  border-top: 1px solid #dfe6e2;
  border-bottom: 1px solid #dfe6e2;
}

@media (min-width: 1280px) {
  .evidence-library .container { padding-right: 240px; }
}

.evidence-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 28px;
}

.evidence-heading h2 {
  margin: 6px 0 8px;
  font-size: 32px;
  line-height: 1.25;
  letter-spacing: 0;
}

.evidence-heading p {
  margin: 0;
  color: #52605a;
}

.evidence-kicker,
.evidence-api-label {
  color: #176b4d;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: 0;
}

.evidence-count {
  display: grid;
  grid-template-columns: auto auto;
  align-items: baseline;
  gap: 8px;
  min-width: max-content;
  color: #52605a;
}

.evidence-count strong {
  color: #153c2f;
  font-size: 32px;
  line-height: 1;
}

.evidence-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 190px) minmax(150px, 190px);
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid #d7dfda;
  border-bottom: 1px solid #d7dfda;
}

.evidence-toolbar label {
  display: grid;
  gap: 6px;
  color: #53615b;
  font-size: 12px;
  font-weight: 650;
}

.evidence-toolbar input,
.evidence-toolbar select {
  width: 100%;
  min-height: 42px;
  padding: 8px 11px;
  border: 1px solid #becbc4;
  border-radius: 6px;
  background: #fff;
  color: #17221e;
  font: inherit;
  font-size: 14px;
}

.evidence-toolbar input:focus,
.evidence-toolbar select:focus {
  outline: 3px solid rgba(23, 107, 77, 0.18);
  border-color: #176b4d;
}

.evidence-status {
  padding: 24px 0 4px;
  color: #65716c;
  font-size: 14px;
}

.evidence-status[hidden] { display: none; }

.evidence-model-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.evidence-model {
  min-width: 0;
  padding: 20px;
  border: 1px solid #d4ddd8;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(21, 60, 47, 0.05);
}

.evidence-model-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.evidence-model h3 {
  margin: 0 0 5px;
  color: #17221e;
  font-size: 19px;
  line-height: 1.35;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.evidence-domain { color: #68756f; font-size: 13px; overflow-wrap: anywhere; }

.evidence-confidence {
  align-self: flex-start;
  min-width: max-content;
  padding: 5px 8px;
  border: 1px solid #a9cdbf;
  border-radius: 999px;
  color: #176b4d;
  background: #eff8f4;
  font-size: 12px;
  font-weight: 700;
}

.evidence-revenue {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
  padding: 14px 0;
  border-top: 1px solid #e3e9e6;
  border-bottom: 1px solid #e3e9e6;
}

.evidence-revenue strong { display: block; color: #153c2f; font-size: 24px; line-height: 1.2; }
.evidence-revenue span { color: #68756f; font-size: 12px; }
.evidence-observed { text-align: right; }

.evidence-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-height: 26px;
  margin: 14px 0;
}

.evidence-tag {
  padding: 4px 7px;
  border-radius: 4px;
  background: #edf1ef;
  color: #45524c;
  font-size: 12px;
}

.evidence-model details { border-top: 1px solid #e3e9e6; }
.evidence-model summary { padding: 12px 0; color: #33433c; cursor: pointer; font-size: 13px; font-weight: 700; }
.evidence-source-list { margin: 0; padding: 0 0 0 18px; }
.evidence-source-list li { margin: 0 0 9px; color: #596760; font-size: 13px; line-height: 1.5; }
.evidence-source-list a { color: #176b4d; text-underline-offset: 2px; overflow-wrap: anywhere; }

.evidence-caveat {
  margin: 12px 0 0;
  padding-left: 14px;
  border-left: 3px solid #d69a25;
  color: #5d5543;
  font-size: 12px;
  line-height: 1.55;
}

.evidence-api-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 24px;
  padding: 16px 0 0;
  border-top: 1px solid #d7dfda;
}

.evidence-api-strip > div { display: grid; gap: 5px; min-width: 0; }
.evidence-api-strip code { color: #28352f; font-size: 13px; overflow-wrap: anywhere; }
.evidence-api-strip a { color: #176b4d; font-size: 13px; font-weight: 700; }

@media (max-width: 760px) {
  .evidence-heading { align-items: flex-start; }
  .evidence-toolbar { grid-template-columns: 1fr 1fr; }
  .evidence-search { grid-column: 1 / -1; }
  .evidence-model-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .evidence-library { padding-left: 0; padding-right: 0; }
  .evidence-heading { display: grid; gap: 18px; }
  .evidence-heading h2 { font-size: 26px; }
  .evidence-count strong { font-size: 28px; }
  .evidence-toolbar { grid-template-columns: 1fr; }
  .evidence-search { grid-column: auto; }
  .evidence-model-head, .evidence-api-strip { align-items: flex-start; flex-direction: column; }
  .evidence-revenue { grid-template-columns: 1fr; }
  .evidence-observed { text-align: left; }
}
