@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;650;700&family=Source+Serif+4:wght@500;600&display=swap');

/* Institutional identity, deeper mint palette and readable data controls. */
:root {
  --ink: #172f28;
  --muted: #506459;
  --green: #07583f;
  --light: #e4eee8;
  --line: #bfcec4;
  --cream: #f5f7f5;
  --amber: #a77816;
  --radius: 7px;
  font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont, sans-serif;
}
body { background: var(--cream); }
.university-bar {
  padding: 10px 5%;
  background: #171c19;
  border-top: 4px solid #ffcd00;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.university-bar a { display: flex; align-items: center; gap: 16px; }
.university-bar strong { color: #ffcd00; font-size: 21px; font-weight: 700; letter-spacing: -.5px; }
.university-bar a span { font-size: 12px; letter-spacing: .5px; }
.college-name { font-size: 11px; color: #d5dfd8; }
.header { background: #fff; height: 87px; border-bottom-color: #bdcbbf; }
.brand { color: #163e2f; font-size: 23px; }
.brandmark { border-radius: 5px; background: #134b36; }
.brand small { color: #425e4d; font-size: 9px; letter-spacing: 1.9px; }
.header nav { font-size: 14px; gap: 28px; }
.header nav button { font-size: 14px; }
.lab-link { color: #07583f; font-size: 13px; font-weight: 600; border-bottom: 1px solid #7e9d89; padding-bottom: 3px; }
.hero { padding: 36px 0 29px; align-items: center; gap: 32px; }
.hero-copy { flex: 1; min-width: 0; }
.eyebrow { color: #07583f; font-size: 11px; letter-spacing: 1.8px; }
.hero h1 { font-family: 'Source Serif 4', Georgia, serif; font-weight: 500; font-size: clamp(39px, 4.1vw, 55px); line-height: 1.1; letter-spacing: -1.6px; margin: 18px 0; }
.hero h1 em { font-weight: 500; color: #07583f; }
.hero .intro { font-size: 15px; color: #415c4e; line-height: 1.6; }
.investigator { margin-top: 14px; font-size: 13px; color: #294f3e; }
.investigator a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: #a7b9ab; }
.hero-meta { color: #465f51; font-size: 11px; margin-top: 20px; gap: 12px; }
.hero-meta > span + span:before { margin-right: 12px; }
.explore-cta { color: #fff; background: #07583f; padding: 10px 16px; border-radius: 4px; font-size: 13px; margin-top: 21px; }
.explore-cta:hover { background: #16452f; color: #fff; }
.hero-art { display: block; flex: 0 0 41%; width: 41%; min-width: 300px; max-width: 480px; height: auto; margin: 0; padding: 12px; border: 1px solid #c6d3c9; border-radius: 7px; background: #fff; align-self: center; }
.hero-art img { display: block; width: 100%; height: auto; aspect-ratio: 850 / 466; object-fit: contain; }
.hero-art figcaption { color: #31533d; text-align: center; font-size: 11px; line-height: 1.7; padding-top: 9px; border-top: 1px solid #e0e7df; }
.hero-art figcaption span { color: #607364; }
.release-strip { padding: 21px 0; margin-bottom: 21px; justify-content: flex-start; }
.release-strip > div { gap: 14px; padding-right: 39px; margin-right: 39px; }
.release-strip > div:last-child { margin-right: 0; padding-right: 0; border: 0; }
.strip-number { font-size: 30px; font-weight: 750; color: #144732; }
.release-strip > div > span + span { font-size: 13px; color: #234b37; }
.release-strip small { color: #506853; font-size: 11px; }
.notice { font-size: 12px; border-radius: 5px; margin-bottom: 23px; }
.notice.live { color: #284d36; border-color: #bdcdbf; background: #e6eee6; }
.notice-icon { border-color: #577c5c; }
.notice button { color: #194d33; font-size: 11px; }
.filters, .table-card { border-color: #bacbc0; border-radius: 7px; }
.filter-heading { background: #194a35; border-color: #194a35; padding: 17px 16px; }
.filter-heading h2, #mobile-filters { color: #fff; font-size: 14px; }
.filter-heading .text-button { color: #eef7ef; font-size: 11px; }
.field-label, .filter-group h3 { font-family: 'Source Sans 3', sans-serif; font-size: 13px; color: #203e2b; }
.field-label small { color: #526957; font-size: 10px; }
.filter-body select, .advanced input { font-size: 12px; color: #294635; padding: 9px 10px; border-color: #bccdc0; }
.field-hint { color: #526b58; font-size: 11px; }
.check-row { font-size: 12px; color: #23402d; margin: 13px 0; }
.check-row input { width: 14px; height: 14px; }
.check-row .facet-count { font-size: 11px; color: #526b56; }
.check-row .swatch { display: none; }
.filter-group { border-color: #d9e2d9; }
.other-seeds summary, .other-seeds .check-row, .advanced summary { color: #365e40; font-size: 12px; }
.facet-note { color: #607361; font-size: 10px; }
.tip { background: #e8eee2; }
.tip p, .tip strong { color: #466444; }
.tabs button { color: #5c7061; font-size: 15px; font-weight: 600; }
.tabs button[aria-selected=true] { color: #064d34; font-weight: 700; }
.tabs button[aria-selected=true]:after { height: 4px; }
.text-button { color: #46644e; font-size: 12px; }
.dataset-description { color: #49614e; font-size: 13px; margin: 16px 0; }
.search-bar { border-color: #7e9e89; border-radius: 6px; }
.search-bar input { font-size: 14px; }
.search-bar input::placeholder { color: #677c6c; }
.search-bar select { font-size: 12px; width: 108px; }
.primary { background: #07583f; font-size: 13px; border-radius: 4px; }
.search-help, .search-help button { color: #4c6954; font-size: 11px; }
.result-stats { background: #174f37; border: 1px solid #174f37; border-radius: 6px; padding: 20px 24px; color: #fff; }
.result-stats > div > span { color: #fff; font-size: 29px; font-weight: 650; }
.result-stats small { color: #e1eddd; font-size: 12px; }
.result-stats .context-note { display: none; }
.table-toolbar { padding: 16px 18px; }
.table-toolbar h2 { color: #143e29; font-size: 15px; }
.table-toolbar > div > span { color: #536c55; font-size: 11px; }
.download { background: #e3eee3; border-color: #a9c2ac; color: #185c33; }
.download span, .icon-button span { font-size: 12px; }
.icon-button { color: #3b6343; }
thead { background: #244b37; border-color: #244b37; }
th, th button, th button span { color: #fff; font-size: 11px; }
th button:hover { color: #ffe18c; }
td { color: #354f3b; border-color: #e0e6df; font-size: 12px; padding-top: 14px; padding-bottom: 14px; }
tbody tr:nth-child(even) { background: #f6f8f4; }
tbody tr:hover { background: #e8f0e3; }
.record-link { color: #075333; font-size: 12px; font-weight: 650; }
.gene { color: #24462c; }
.region-label { color: #3c5b42; font-size: 12px; }
.region-label:before { background: #4f7a54; }
.seed-badge { color: #205331; border-color: #a7c8ab; background: #e2eedb; font-size: 11px; }
.seed-badge.secondary { color: #635421; background: #f0ecd8; border-color: #d2c69c; }
.more-families, .row-open { color: #476d48; }
.pagination { color: #4e684f; font-size: 11px; }
.pagination select, .pagination #page-number { color: #34573c; font-size: 11px; }
.table-footnote { color: #526b53; font-size: 11px; }
.chip { color: #194e2b; border-color: #a6c2a7; background: #dfeadd; font-size: 11px; }
.dialog { border-radius: 9px; border-color: #a6bda9; background: #fff; }
.dialog p, .dialog li { color: #45614b; font-size: 13px; }
.dialog h2 { color: #194b31; }
.dialog-header .eyebrow { color: #3c6147; }
.record-fields dt { color: #48664d; }
.record-fields dd { color: #25452d; }
.record-group summary { color: #1b4e2c; font-size: 13px; }
.record-group summary small, .data-origin { color: #557358; }
.detail-summary { background: #e5eedf; }
.detail-summary small { color: #3e6546; }
#pvalue-hint:empty { display: none; }
footer { margin-top: 42px; background: #1b2f24; color: #fff; padding: 28px 5%; border-top: 3px solid #c9a943; gap: 25px; align-items: flex-start; }
footer a { color: #fff; }
footer a:hover { color: #ffdf70; }
.footer-university a { display: flex; flex-direction: column; gap: 5px; }
.footer-university strong { font-size: 26px; letter-spacing: -.6px; color: #ffcd00; }
.footer-university span { font-size: 11px; color: #e2eade; }
.footer-lab { display: flex; flex-direction: column; gap: 8px; padding-top: 6px; }
.footer-lab a { font-size: 13px; font-weight: 600; }
.footer-lab span { font-size: 11px; color: #c6d5c3; }
.footer-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 14px; padding-top: 7px; }
.footer-meta span { color: #d1dfcc; font-size: 11px; }
.footer-meta button { color: #fff; font-size: 12px; padding: 0; }
@media (max-width: 1100px) {
  .lab-link { display: none; }
  .hero { gap: 24px; }
  .hero-art { min-width: 270px; }
  .hero h1 { font-size: 43px; }
  .hero-meta { font-size: 10px; gap: 8px; }
  .hero-meta > span + span:before { margin-right: 8px; }
  .release-strip > div { padding-right: 26px; margin-right: 26px; }
}
@media (max-width: 900px) {
  .hero { display: grid; grid-template-columns: 1fr; gap: 22px; }
  .hero-art { display: block; width: 100%; min-width: 0; max-width: 500px; margin: 0 auto; }
  .hero h1 { font-size: 46px; }
  .hero-meta { font-size: 11px; }
  .college-name { display: none; }
  .brand { font-size: 21px; }
  .header nav { gap: 20px; }
  .header nav button { font-size: 12px; }
  #mobile-filters { color: #fff; font-size: 14px; }
  .result-stats { justify-content: space-between; }
  footer { flex-wrap: wrap; gap: 24px; }
  .footer-lab { flex: 1; min-width: 250px; }
  .footer-meta { flex-direction: row; align-items: center; justify-content: space-between; width: 100%; }
}
@media (max-width: 620px) {
  .university-bar { padding: 8px 5%; }
  .university-bar strong { font-size: 20px; }
  .university-bar a span { font-size: 11px; }
  .header { height: 82px; gap: 13px; }
  .brand { font-size: 18px; }
  .brand small { font-size: 8px; letter-spacing: 1px; }
  .brandmark { width: 33px; height: 36px; }
  .header nav { gap: 15px; font-size: 12px; }
  .header nav button { font-size: 11px; }
  .hero { padding: 25px 0 23px; gap: 21px; }
  .hero h1 { font-size: 39px; letter-spacing: -1.2px; }
  .hero .eyebrow { font-size: 10px; }
  .hero .intro { font-size: 14px; }
  .investigator { font-size: 12px; line-height: 1.9; }
  .hero-meta { font-size: 9px; flex-wrap: wrap; gap: 8px; white-space: normal; }
  .hero-art { padding: 9px; }
  .hero-art figcaption { font-size: 10px; }
  .release-strip { gap: 12px; padding: 17px 0; }
  .release-strip > div { border: 0; padding: 0; margin: 0; gap: 3px; flex-direction: column; align-items: flex-start; }
  .strip-number { font-size: 24px; }
  .release-strip > div > span + span { font-size: 11px; }
  .release-strip small { font-size: 10px; }
  .tissue-total { display: flex; }
  .filter-body > #tissue { grid-column: 1/-1; }
  .filter-body select, .check-row { font-size: 12px; }
  .search-bar input { font-size: 12px; }
  .search-bar select { font-size: 11px; width: 78px; }
  .search-bar .primary { font-size: 12px; padding: 10px 13px; }
  .search-help, .search-help button { font-size: 10px; }
  .tabs button { font-size: 14px; }
  .result-stats { padding: 18px; gap: 10px; }
  .result-stats > div > span { font-size: 25px; }
  .result-stats small { font-size: 10px; }
  .table-actions .icon-button span { display: none; }
  .download span { font-size: 11px; }
  .table-toolbar h2 { font-size: 14px; }
  .dataset-description { font-size: 12px; }
  .table-footnote { font-size: 10px; }
  .footer-lab { min-width: 100%; }
}

@media(max-width:620px){.release-strip{justify-content:space-between}}
