/* Local system fonts keep the field guide available offline. */
#detail{--specimen-tint:#ece9df;--specimen-accent:#716853;width:780px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #ffffff99;border-radius:22px;background:#faf8f2;color:#292e27;box-shadow:0 32px 120px #18221c55;overflow:auto}
#detail::backdrop{background:#1f29256b;backdrop-filter:blur(7px)}
.specimen-header{display:flex;align-items:center;gap:16px;margin:0 32px;padding:22px 0;border-bottom:1px solid #303b2926}
.specimen-masthead{font:11px/1.4 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.specimen-color{display:flex;align-items:center;gap:7px;margin-left:auto;font:10px/1.4 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.specimen-color::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--specimen-accent)}
#detail #close{float:none;display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;padding:0;border:1px solid #303b2930;border-radius:50%;background:transparent;font:23px/1 Georgia,serif;color:#41483c}
#detail #close:hover{background:#e5e7dd}
#detail :is(button,a,input):focus-visible{outline:2px solid var(--specimen-accent);outline-offset:4px}
.specimen-body{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:32px}
.specimen-figure{margin:0;min-width:0}
.specimen-mount{position:relative;width:100%;height:350px;overflow:hidden;border:3px solid var(--specimen-accent);border-radius:180px 180px 10px 10px;background:var(--specimen-tint);isolation:isolate}
#detail #photo{position:absolute;display:block;max-width:none;max-height:none;margin:0;object-fit:fill;box-shadow:none}
.specimen-figure figcaption{margin-top:13px;text-align:center;font:10px/1.5 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#717367}
.specimen-description{align-self:center;min-width:0;padding:10px 0}
.specimen-eyebrow{margin:0 0 15px!important;font:10px/1.4 system-ui,sans-serif!important;letter-spacing:.18em;text-transform:uppercase;color:#656b5d!important}
#detail h2{margin:0 0 25px;font:italic 42px/1.08 'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;font-weight:400;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance}
#detail #lineage{margin:0;border-top:1px solid #303b2926;font:13px/1.4 system-ui,sans-serif}
.taxonomy-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid #303b291a}
.taxonomy-row dt{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#727668;padding-top:3px}
.taxonomy-row dd{margin:0;overflow-wrap:anywhere}
.specimen-footer{margin:0 32px;padding:20px 0 24px;border-top:1px solid #303b2926}
#detail #credit{font:11px/1.6 system-ui,sans-serif;color:#686e61;margin:0 0 18px;overflow-wrap:anywhere}
.specimen-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
#detail #source{font:12px/1.4 system-ui,sans-serif;color:#303d30;text-decoration:none;border-bottom:1px solid #89917e;padding:5px 0}
#detail #source:hover{border-color:#303d30}
#detail #copy-link{margin-left:auto;border:1px solid #303b2930;border-radius:30px;background:transparent;font-size:11px;padding:9px 16px}
#detail #copy-link:hover{background:var(--specimen-tint)}
#share-status{font-size:11px;color:#555f4d}
#share-status:empty{display:none}
#detail #share-link{margin-top:14px;font-size:12px}
@media(max-width:600px){#detail{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:18px}.specimen-header{margin:0 20px;padding:15px 0;gap:10px}.specimen-masthead{font-size:9px}.specimen-color{font-size:9px}.specimen-body{grid-template-columns:1fr;gap:23px;padding:24px 24px 20px}.specimen-mount{height:300px;max-width:300px;margin:auto}.specimen-description{padding:0}#detail h2{font-size:36px;margin-bottom:20px}.specimen-eyebrow{margin-bottom:10px!important}.specimen-footer{margin:0 24px;padding:17px 0 22px}}
@media(prefers-reduced-motion:no-preference){#detail[open]{animation:specimen-arrive .22s ease-out}@keyframes specimen-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}


/* Modal-only overlay shares the photo's crop transform. Even-odd fill leaves
   mushroom regions untouched while darkening the surrounding photograph. */
#mask-outline{position:absolute;pointer-events:none;overflow:hidden}
#mask-outline .background-dim{fill:#000;fill-opacity:.1;stroke:none}
