/* Sharks & Rays review: photographic atlas and focused specimen window.
   Deliberately scoped; the approved site header and illustrated introduction
   keep their existing styles. */
body.atlas-guide {
  --atlas-paper: #f7f2e7;
  --atlas-surface: #fffaf0;
  --atlas-forest: #233d32;
  --atlas-ink: #233b34;
  --atlas-muted: #62695c;
  --atlas-line: #d7d0bf;
  --atlas-focus: #98743a;
}

body.atlas-guide .explore-body {
  display: block;
  margin-top: 0;
  padding-top: 2.15rem;
}
body.atlas-guide .species-browser { min-width: 0; }
body.atlas-guide .atlas-browse-title { margin-bottom: 1.1rem; }
body.atlas-guide .atlas-browse-title h2 {
  margin: 0 0 .4rem;
  color: var(--atlas-forest);
  font: 400 clamp(1.85rem, 3.2vw, 2.7rem)/1.12 Georgia, serif;
  letter-spacing: -.028em;
}
body.atlas-guide .atlas-browse-title p {
  margin: 0;
  color: #536255;
  font: 1rem/1.55 Georgia, serif;
}
body.atlas-guide .tools {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: .8rem;
  margin: 0;
}
body.atlas-guide .search-label {
  display: block;
  flex: 1;
  min-width: 0;
  max-width: 720px;
  color: var(--atlas-muted);
  font: 500 .75rem/1.5 system-ui, sans-serif;
}
body.atlas-guide #species-search {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-height: 48px;
  margin: .3rem 0 0;
  border: 1px solid #c6c5b4;
  border-radius: 2px;
  background: #fffaf1;
  padding: .72rem 1rem;
  color: var(--atlas-ink);
  font: .95rem/1.4 system-ui, sans-serif;
  transition: border-color 160ms ease, background 160ms ease;
}
body.atlas-guide #species-search::placeholder { color: #73796b; opacity: 1; }
body.atlas-guide #species-search:hover { border-color: #7c8c7a; }
body.atlas-guide #species-search:focus { border-color: var(--atlas-forest); background: #fffdf8; }
body.atlas-guide #expand-guide {
  flex: none;
  min-height: 48px;
  margin: 0;
  padding: .7rem 1.1rem;
  border: 1px solid var(--atlas-forest);
  border-radius: 2px;
  background: var(--atlas-forest);
  color: #fff8e9;
  font: 500 .86rem/1.45 system-ui, sans-serif;
  cursor: pointer;
}
body.atlas-guide #expand-guide:hover { background: #345545; }
body.atlas-guide #expand-guide:disabled { opacity: .58; cursor: wait; }
body.atlas-guide .guide-status {
  display: flex;
  align-items: baseline;
  gap: .4rem 1rem;
  flex-wrap: wrap;
  min-height: 2.8rem;
  color: var(--atlas-muted);
  font: .75rem/1.5 system-ui, sans-serif;
}
body.atlas-guide .guide-status p { margin: .75rem 0; }
body.atlas-guide .guide-status p:empty { display: none; }
body.atlas-guide .group-filters[hidden] { display: none; }
body.atlas-guide .browse-layout { display: block; min-width: 0; }
body.atlas-guide #species-grid.species-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 1.35rem;
}
body.atlas-guide .species-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid #d9d5c7;
  border-radius: 2px;
  background: var(--atlas-surface);
  padding: 0;
  color: var(--atlas-ink);
  text-align: left;
  cursor: pointer;
  box-shadow: 0 1px 1px #233d3204;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
body.atlas-guide .species-card:hover {
  transform: translateY(-3px);
  border-color: #8c9c89;
  box-shadow: 0 9px 23px #233d3212;
}
body.atlas-guide .species-card[aria-pressed="true"] {
  outline: 2px solid #7c8e75;
  outline-offset: 3px;
  background: var(--atlas-surface);
}
body.atlas-guide .species-card > img {
  position: static;
  display: block;
  flex: none;
  width: 100%;
  height: auto;
  aspect-ratio: 1.62;
  object-fit: cover;
  object-position: center;
  background: #e0e7df;
}
body.atlas-guide .species-card > .photo-missing {
  display: grid;
  place-items: center;
  box-sizing: border-box;
  flex: none;
  width: 100%;
  aspect-ratio: 1.62;
  background: #e6e9df;
  padding: 1rem;
  color: #596b5b;
  font: .85rem/1.5 Georgia, serif;
  text-align: center;
}
body.atlas-guide .species-card .card-copy {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
  min-height: 5.15rem;
  padding: .95rem 2.6rem .95rem 1rem;
}
body.atlas-guide .atlas-card-credit {
  display: block;
  padding: .35rem .75rem 0;
  color: #62695c;
  font: .63rem/1.45 system-ui, sans-serif;
  overflow-wrap: anywhere;
}
body.atlas-guide .species-card .card-copy strong {
  display: block;
  margin: 0 0 .27rem;
  color: var(--atlas-ink);
  font: 400 clamp(1.12rem, 1.6vw, 1.4rem)/1.2 Georgia, serif;
  letter-spacing: -.014em;
  overflow-wrap: anywhere;
}
body.atlas-guide .species-card .card-copy em {
  display: block;
  margin: 0;
  color: #586558;
  font: italic .9rem/1.35 Georgia, serif;
  overflow-wrap: anywhere;
}
body.atlas-guide .atlas-card-arrow {
  position: absolute;
  right: 1rem;
  top: 1rem;
  color: #365345;
  font: 1.2rem/1 Georgia, serif;
  transition: transform 180ms ease;
}
body.atlas-guide .species-card:hover .atlas-card-arrow { transform: translateX(3px); }
body.atlas-guide .species-card .teaser,
body.atlas-guide .species-card .hazard-badges { display: none; }
body.atlas-guide .species-skeleton .skeleton-photo { aspect-ratio: 1.62; }
body.atlas-guide .species-skeleton .skeleton-copy { min-height: 3.3rem; }

/* Native dialog supplies focus containment and keeps the atlas behind it inert. */
body.atlas-guide:has(#atlas-window[open]),
body.atlas-guide.atlas-modal-open { overflow: hidden; }
body.atlas-guide #atlas-window {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: min(1100px, calc(100vw - 80px));
  max-width: none;
  max-height: min(88dvh, 1000px);
  margin: auto;
  overflow: hidden;
  border: 1px solid #e3dccd;
  border-radius: 7px;
  padding: 0;
  background: var(--atlas-surface);
  color: var(--atlas-ink);
  box-shadow: 0 28px 90px #10251c50, 0 2px 12px #10251c25;
  opacity: 0;
  transform: translateY(14px) scale(.975);
  transition: opacity 210ms ease, transform 260ms cubic-bezier(.2,.7,.2,1);
}
body.atlas-guide #atlas-window[open] { display: block; }
body.atlas-guide #atlas-window.is-presented { opacity: 1; transform: translateY(0) scale(1); }
body.atlas-guide #atlas-window::backdrop {
  background: #142a236b;
  backdrop-filter: saturate(.55);
  transition: background 210ms ease;
}
body.atlas-guide #atlas-window:not(.is-presented)::backdrop { background: #142a2300; }
body.atlas-guide .atlas-window {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-width: 0;
  max-height: min(calc(88dvh - 2px), 998px);
  overflow: hidden;
}
body.atlas-guide .atlas-dialog-header {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 1.35rem 1.7rem 1.15rem;
  border-bottom: 1px solid var(--atlas-line);
  background: var(--atlas-surface);
  text-align: left;
}
body.atlas-guide .atlas-identity { flex: 1 1 auto; min-width: 0; }
body.atlas-guide .atlas-kicker {
  margin: 0 0 .35rem;
  color: #68725f;
  font: 600 .62rem/1.4 system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: .15em;
}
body.atlas-guide #atlas-title {
  margin: 0;
  color: var(--atlas-forest);
  font: 400 clamp(1.75rem, 3vw, 2.45rem)/1.1 Georgia, serif;
  letter-spacing: -.026em;
  overflow-wrap: anywhere;
}
body.atlas-guide #atlas-latin {
  margin: .35rem 0 0;
  color: #5b685b;
  font: italic 1.08rem/1.3 Georgia, serif;
}
body.atlas-guide #atlas-latin:empty { display: none; }
body.atlas-guide .atlas-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  align-self: flex-start;
  gap: .6rem;
  min-width: 76px;
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: 3px;
  padding: .55rem .6rem;
  background: transparent;
  color: var(--atlas-forest);
  font: .88rem/1.2 system-ui, sans-serif;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}
body.atlas-guide .atlas-close:hover { background: #e9eddf; border-color: #d5ddcb; }
body.atlas-guide .atlas-scroll {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #9aa88e transparent;
}
body.atlas-guide #species-detail.atlas-profile {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
  align-items: start;
  gap: 1.85rem;
  box-sizing: border-box;
  max-height: none;
  margin: 0;
  overflow: visible;
  border: 0;
  padding: 1.6rem 1.7rem 1.8rem;
  background: transparent;
  box-shadow: none;
  font: 1rem/1.6 Georgia, serif;
  transition: opacity 150ms ease, transform 190ms ease;
}
body.atlas-guide #species-detail.atlas-profile[hidden] { display: none; }
body.atlas-guide .atlas-profile.is-changing { opacity: 0; transform: translateX(16px); }
body.atlas-guide .atlas-profile.is-changing.is-previous { transform: translateX(-16px); }
body.atlas-guide .atlas-visual { position: sticky; top: 1.3rem; min-width: 0; }
body.atlas-guide .atlas-visual .detail-photo-frame {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  aspect-ratio: 4/3;
  max-height: min(49dvh, 490px);
  margin: 0;
  overflow: hidden;
  border: 1px solid #d8ddcf;
  border-radius: 2px;
  background: #e6ebe1;
}
body.atlas-guide .atlas-visual .detail-photo-frame .detail-photo {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  margin: 0;
  background: transparent;
  object-fit: contain;
}
body.atlas-guide .atlas-visual .photo-missing {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  aspect-ratio: auto;
  padding: 1.4rem;
  background: #e6ebe1;
  color: #55624f;
  font: .9rem/1.6 Georgia, serif;
  text-align: center;
}
body.atlas-guide .atlas-visual > .photo-missing {
  position: static;
  width: 100%;
  aspect-ratio: 4 / 3;
}
body.atlas-guide .atlas-profile .source-citations a {
  display: inline-block;
  position: relative;
  min-width: 1em;
  margin: 0;
  padding: .35em .3em;
  font: inherit;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}
body.atlas-guide .atlas-profile .source-citations a::after { content: ''; position: absolute; inset: -.3em -.1em; }
body.atlas-guide .atlas-cited-tail { white-space: nowrap; }
body.atlas-guide .atlas-visual .photo-attribution {
  margin-top: .4rem;
  color: #67715e;
  font: .71rem/1.6 system-ui, sans-serif;
  overflow-wrap: anywhere;
}
body.atlas-guide .atlas-visual .photo-attribution summary {
  box-sizing: border-box;
  min-height: 38px;
  padding: .55rem 0;
  cursor: pointer;
}
body.atlas-guide .atlas-visual .credit,
body.atlas-guide .atlas-visual .photo-attribution p {
  margin: .4rem 0;
  color: #67715e;
  font: .71rem/1.6 system-ui, sans-serif !important;
  overflow-wrap: anywhere;
}
body.atlas-guide .atlas-notes { min-width: 0; }
body.atlas-guide .atlas-notes .atlas-lead {
  margin: -.22rem 0 1.25rem;
  color: var(--atlas-ink);
  font: 1.22rem/1.55 Georgia, serif;
  letter-spacing: -.008em;
}
body.atlas-guide .atlas-notes .profile-summary {
  display: block;
  margin: 0 0 1.15rem;
  border: 0;
  padding: 0;
}
body.atlas-guide .atlas-notes .profile-summary > div {
  display: block;
  min-width: 0;
  border-top: 1px solid var(--atlas-line);
  padding: .85rem 0 .9rem;
}
body.atlas-guide .atlas-notes .profile-summary > div:last-child { border-bottom: 1px solid var(--atlas-line); }
body.atlas-guide .atlas-notes .profile-summary dt {
  margin: 0 0 .3rem;
  color: #69715f;
  font: 600 .62rem/1.45 system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: .13em;
}
body.atlas-guide .atlas-notes .profile-summary dd {
  margin: 0;
  color: var(--atlas-ink);
  font: 1.03rem/1.62 Georgia, serif;
  overflow-wrap: anywhere;
}
body.atlas-guide .atlas-notes .profile-summary small {
  margin-top: .4rem;
  color: var(--atlas-muted);
  font: .73rem/1.6 system-ui, sans-serif;
}
body.atlas-guide .atlas-section,
body.atlas-guide .atlas-notes .source-notes,
body.atlas-guide .atlas-curation {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--atlas-line);
  background: transparent;
  padding: 0;
  color: var(--atlas-ink);
}
body.atlas-guide .atlas-section > summary,
body.atlas-guide .atlas-notes .source-notes > summary,
body.atlas-guide .atlas-curation > summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  box-sizing: border-box;
  min-height: 48px;
  padding: .8rem .2rem .8rem 0;
  list-style: none;
  color: var(--atlas-forest);
  font: 1rem/1.4 Georgia, serif;
  cursor: pointer;
}
body.atlas-guide .atlas-section > summary::-webkit-details-marker,
body.atlas-guide .atlas-notes .source-notes > summary::-webkit-details-marker,
body.atlas-guide .atlas-curation > summary::-webkit-details-marker { display: none; }
body.atlas-guide .atlas-section > summary::after,
body.atlas-guide .atlas-notes .source-notes > summary::after,
body.atlas-guide .atlas-curation > summary::after {
  content: '+';
  flex: none;
  color: #657a60;
  font: 1.15rem/1 system-ui, sans-serif;
}
body.atlas-guide .atlas-section[open] > summary::after,
body.atlas-guide .atlas-notes .source-notes[open] > summary::after,
body.atlas-guide .atlas-curation[open] > summary::after { content: '\2212'; }
body.atlas-guide .atlas-section[open] > summary,
body.atlas-guide .atlas-notes .source-notes[open] > summary,
body.atlas-guide .atlas-curation[open] > summary { padding-bottom: .5rem; }
body.atlas-guide .atlas-section p,
body.atlas-guide .atlas-section li,
body.atlas-guide .atlas-curation p {
  margin: .25rem 0 .9rem;
  color: #435345;
  font: .97rem/1.7 Georgia, serif;
}
body.atlas-guide .atlas-section ul,
body.atlas-guide .atlas-section ol { margin: .25rem 0 1rem; padding-left: 1.25rem; }
body.atlas-guide .atlas-notes .source-notes { margin-top: .6rem; }
body.atlas-guide .atlas-notes .source-notes > summary,
body.atlas-guide .atlas-curation > summary { font-size: .85rem; }
body.atlas-guide .atlas-notes .source-notes .source-list { margin: .2rem 0 1rem; padding-left: 1.2rem; }
body.atlas-guide .atlas-notes .source-notes li {
  margin: .3rem 0 .75rem;
  color: #58624f;
  font: .75rem/1.65 system-ui, sans-serif;
  overflow-wrap: anywhere;
}
body.atlas-guide .atlas-profile a { color: #365d48; text-underline-offset: .2em; }
body.atlas-guide .atlas-profile a:hover { color: #163d29; }
body.atlas-guide .atlas-profile .source-citations { color: #657c5c; }

/* The pager remains present while the specimen's longer notes scroll. */
body.atlas-guide .atlas-pager {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: stretch;
  gap: 1.1rem;
  min-width: 0;
  min-height: 76px;
  border-top: 1px solid var(--atlas-line);
  padding: .55rem 1.2rem;
  background: var(--atlas-surface);
}
body.atlas-guide .atlas-pager button {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: .18rem;
  min-width: 0;
  min-height: 52px;
  border: 1px solid transparent;
  border-radius: 3px;
  padding: .35rem .6rem .35rem 2.4rem;
  background: transparent;
  color: var(--atlas-forest);
  text-align: left;
  cursor: pointer;
  transition: background 150ms ease, border-color 150ms ease;
}
body.atlas-guide .atlas-pager button::before {
  content: '\2190';
  position: absolute;
  left: .45rem;
  top: 50%;
  transform: translateY(-50%);
  font: 1.6rem/1 Georgia, serif;
}
body.atlas-guide .atlas-pager #atlas-next {
  align-items: flex-end;
  padding: .35rem 2.4rem .35rem .6rem;
  text-align: right;
}
body.atlas-guide .atlas-pager #atlas-next::before { content: '\2192'; left: auto; right: .45rem; }
body.atlas-guide .atlas-pager button:hover:not(:disabled) { border-color: #dce2d2; background: #eaf0e2; }
body.atlas-guide .atlas-pager button:disabled { opacity: .34; cursor: default; }
body.atlas-guide .atlas-nav-label { color: inherit; font: .94rem/1.25 Georgia, serif; }
body.atlas-guide .atlas-nav-name { color: #5e6e5b; font: italic .79rem/1.35 Georgia, serif; overflow-wrap: anywhere; }
body.atlas-guide .atlas-position {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .24rem;
  max-width: 150px;
  color: var(--atlas-forest);
  text-align: center;
}
body.atlas-guide #atlas-count { font: 1.05rem/1.2 Georgia, serif; white-space: nowrap; }
body.atlas-guide #atlas-scope { color: #6b7463; font: .66rem/1.4 system-ui, sans-serif; overflow-wrap: anywhere; }
body.atlas-guide .atlas-returned { animation: atlas-return 1600ms ease-out; }
@keyframes atlas-return {
  0%, 35% { outline: 3px solid #b08b45; outline-offset: 4px; box-shadow: 0 0 0 8px #b08b4520; }
  100% { outline: 3px solid transparent; outline-offset: 4px; box-shadow: 0 0 0 8px transparent; }
}
body.atlas-guide .species-card:focus-visible,
body.atlas-guide .tools button:focus-visible,
body.atlas-guide #species-search:focus-visible,
body.atlas-guide .atlas-dialog button:focus-visible,
body.atlas-guide .atlas-dialog summary:focus-visible,
body.atlas-guide .atlas-dialog a:focus-visible {
  outline: 3px solid var(--atlas-focus);
  outline-offset: 3px;
}

@media (min-width: 1100px) {
  body.atlas-guide .species-browser {
    display: grid;
    grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr);
    align-items: end;
    column-gap: 2rem;
  }
  body.atlas-guide .atlas-browse-title { grid-column: 1; margin-bottom: .25rem; }
  body.atlas-guide .tools { grid-column: 2; }
  body.atlas-guide .guide-status,
  body.atlas-guide .group-filters,
  body.atlas-guide .browse-layout,
  body.atlas-guide .species-browser > #empty-results,
  body.atlas-guide .species-browser > .guide-recovery { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  body.atlas-guide #species-grid.species-grid { gap: 1rem; }
  body.atlas-guide .species-card .card-copy { min-height: 5.2rem; padding: .8rem 2rem .8rem .8rem; }
  body.atlas-guide .atlas-card-arrow { right: .7rem; top: .85rem; }
  body.atlas-guide #atlas-window { width: calc(100vw - 40px); }
  body.atlas-guide #species-detail.atlas-profile { gap: 1.4rem; padding: 1.35rem; }
  body.atlas-guide .atlas-dialog-header { padding-inline: 1.35rem; }
  body.atlas-guide .atlas-notes .atlas-lead { font-size: 1.12rem; }
}
@media (max-width: 700px) {
  body.atlas-guide .explore-body { padding-top: 1.6rem; }
  body.atlas-guide .atlas-browse-title { margin-bottom: 1rem; }
  body.atlas-guide .atlas-browse-title h2 { font-size: 1.9rem; }
  body.atlas-guide .atlas-browse-title p { font-size: .95rem; }
  body.atlas-guide .tools { flex-wrap: wrap; align-items: stretch; gap: .65rem; }
  body.atlas-guide .search-label { flex-basis: 100%; }
  body.atlas-guide #species-search { min-height: 46px; font-size: .87rem; }
  body.atlas-guide #expand-guide { min-height: 44px; font-size: .8rem; }
  body.atlas-guide #species-grid.species-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem .7rem; }
  body.atlas-guide .species-card > img,
  body.atlas-guide .species-card > .photo-missing,
  body.atlas-guide .species-skeleton .skeleton-photo { aspect-ratio: 1.25; }
  body.atlas-guide .species-card .card-copy { min-height: 5.3rem; padding: .75rem 1.6rem .8rem .75rem; }
  body.atlas-guide .species-card .card-copy strong { font-size: 1.04rem; line-height: 1.22; }
  body.atlas-guide .species-card .card-copy em { font-size: .76rem; line-height: 1.4; }
  body.atlas-guide .atlas-card-arrow { right: .45rem; top: .78rem; font-size: 1rem; }
  body.atlas-guide #atlas-window {
    inset: 0;
    width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    margin: 0;
    border: 0;
    border-radius: 0;
    transform: translateY(18px);
  }
  body.atlas-guide #atlas-window.is-presented { transform: translateY(0); }
  body.atlas-guide .atlas-window { height: 100%; max-height: 100dvh; }
  body.atlas-guide .atlas-dialog-header {
    gap: .7rem;
    padding: max(.9rem, env(safe-area-inset-top)) 1rem .9rem;
  }
  body.atlas-guide .atlas-kicker { margin-bottom: .25rem; font-size: .56rem; letter-spacing: .11em; }
  body.atlas-guide #atlas-title { font-size: 1.7rem; }
  body.atlas-guide #atlas-latin { font-size: .95rem; }
  body.atlas-guide .atlas-close { min-width: 65px; min-height: 44px; padding: .5rem .35rem; font-size: .82rem; }
  body.atlas-guide #species-detail.atlas-profile { display: block; padding: 0 0 1.25rem; }
  body.atlas-guide .atlas-visual { position: static; }
  body.atlas-guide .atlas-visual .detail-photo-frame { aspect-ratio: 4/3; max-height: 45dvh; border-width: 0 0 1px; border-radius: 0; }
  body.atlas-guide .atlas-visual .photo-attribution { margin: .2rem 1.1rem 0; }
  body.atlas-guide .atlas-visual > .credit { margin: .4rem 1.1rem; }
  body.atlas-guide .atlas-notes { padding: 1.1rem 1.15rem 0; }
  body.atlas-guide .atlas-notes .atlas-lead { margin-top: 0; font-size: 1.15rem; }
  body.atlas-guide .atlas-notes .profile-summary dd { font-size: 1rem; line-height: 1.65; }
  body.atlas-guide .atlas-pager {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: .45rem;
    min-height: 74px;
    padding: .45rem .55rem max(.45rem, env(safe-area-inset-bottom));
  }
  body.atlas-guide .atlas-pager button { min-height: 56px; padding: .35rem .15rem .35rem 1.5rem; }
  body.atlas-guide .atlas-pager #atlas-next { padding: .35rem 1.5rem .35rem .15rem; }
  body.atlas-guide .atlas-pager button::before { left: .1rem; font-size: 1.35rem; }
  body.atlas-guide .atlas-pager #atlas-next::before { right: .1rem; }
  body.atlas-guide .atlas-nav-label { font-size: .84rem; }
  body.atlas-guide .atlas-nav-name { font-size: .67rem; line-height: 1.3; }
  body.atlas-guide .atlas-position { max-width: 80px; }
  body.atlas-guide #atlas-count { font-size: .95rem; }
  body.atlas-guide #atlas-scope { font-size: .57rem; line-height: 1.35; }
}
@media (max-width: 360px) {
  body.atlas-guide .species-card .card-copy { min-height: 5.35rem; padding: .65rem 1.35rem .7rem .6rem; }
  body.atlas-guide .species-card .card-copy strong { font-size: .94rem; }
  body.atlas-guide .species-card .card-copy em { font-size: .7rem; }
  body.atlas-guide .atlas-card-arrow { right: .35rem; }
  body.atlas-guide .atlas-dialog-header { padding-inline: .8rem; }
  body.atlas-guide #atlas-title { font-size: 1.5rem; }
  body.atlas-guide .atlas-close { min-width: 57px; }
  body.atlas-guide .atlas-notes { padding-inline: 1rem; }
  body.atlas-guide .atlas-nav-name { font-size: .61rem; }
  body.atlas-guide .atlas-position { max-width: 66px; }
  body.atlas-guide #atlas-count { font-size: .85rem; }
}
@media (prefers-reduced-motion: reduce) {
  body.atlas-guide #atlas-window,
  body.atlas-guide #atlas-window::backdrop,
  body.atlas-guide .species-card,
  body.atlas-guide .atlas-card-arrow,
  body.atlas-guide #species-detail.atlas-profile,
  body.atlas-guide .atlas-close,
  body.atlas-guide .atlas-pager button { transition: none; }
  body.atlas-guide .species-card:hover { transform: none; }
  body.atlas-guide .atlas-returned { animation: none; outline: 3px solid var(--atlas-focus); outline-offset: 4px; }
}
