.species-photo{max-width:520px;border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.15);margin-bottom:1rem;}
.button-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin-top:1rem;}
a.species-btn{display:inline-block;padding:.6rem .9rem;border-radius:.6rem;text-decoration:none;background:#e9f2ff;border:1px solid #cfe0ff;}
a.species-btn:hover{background:#dceaff;}
.class-heading { margin-top: 2rem; border-top: 1px solid #eee; padding-top: 1rem; }
.sticky { position: sticky; top: 80px; }
.list-group .badge { float: right; }
/* two-line species button: common on top, sci name below */
.species-btn .sp-common { display:block; font-weight:600; }
.species-btn .sp-sci    { display:block; font-size:.9rem; opacity:.85; margin-top:2px; }
.species-figure { margin: 0 0 .75rem 0; }
.species-photo  { max-width: 520px; border-radius: 8px; box-shadow: 0 4px 14px rgba(0,0,0,.15); }
.photo-credit   { font-size: .85rem; color: #666; margin-top: .35rem; }
.photo-credit a { color: inherit; text-decoration: underline; }
.quarto-category a[href*="category=Order%3A"],
.quarto-category a[href*="category=Family%3A"] { display: none; }

@media (min-width: 992px) {
  :root { --quarto-margin-sidebar-width: 380px; }
  #quarto-margin-sidebar { width: 380px !important; }
}
#facet-menu { position: sticky; top: 84px; }
.column-margin details.facet-dd {
  margin:.35rem 0 .6rem; padding:.25rem .6rem;
  border:1px solid #e7e8ef; border-radius:.5rem; background:#fafbff;
}
.column-margin details.facet-dd > summary { cursor:pointer; font-weight:600; list-style:none; }
.column-margin details.facet-dd > summary::-webkit-details-marker { display:none; }
.column-margin .facet-hd { font-size:.8rem; opacity:.7; margin:.35rem 0 .2rem; }
.column-margin .facet-list { margin:0 0 .4rem 1rem; padding:0; }
.column-margin .facet-list li { margin:.12rem 0; }
.column-margin .facet-list a { text-decoration:none; }
.column-margin .facet-list a:hover { text-decoration:underline; }
.column-margin .count { margin-left:.35rem; opacity:.6; font-size:.85em; }
