.species-gallery{background:var(--grey-850);grid-template-rows:minmax(0,1fr) auto;display:grid;position:absolute;inset:0}.species-gallery-stage{background:var(--grey-850);min-height:0;position:relative;overflow:hidden}.species-gallery-expand-target{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0;overflow:hidden}.species-gallery-expand-target .specimen-photo{transition:transform .42s cubic-bezier(.2,.7,.2,1)}.species-gallery-expand-target:hover .specimen-photo{transform:scale(1.025)}.species-gallery-toolbar{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.species-gallery-toolbar>span,.species-gallery-toolbar button{border:1px solid color-mix(in srgb, var(--white) 20%, transparent);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--grey-850) 70%, transparent);min-height:34px;color:var(--surface-warm);font-size:var(--text-xs);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:8px;padding:0 12px;font-weight:800;line-height:1;display:inline-flex}.species-gallery-toolbar button{pointer-events:auto;cursor:zoom-in}.species-gallery-arrow,.species-lightbox-arrow,.species-lightbox-close{border:1px solid color-mix(in srgb, var(--white) 30%, transparent);background:color-mix(in srgb, var(--grey-850) 70%, transparent);color:var(--surface-warm);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;place-items:center;padding:0;transition:background .16s,transform .16s;display:grid}.species-gallery-arrow{z-index:2;width:42px;height:42px;position:absolute;top:50%;transform:translateY(-50%)}.species-gallery-arrow:hover,.species-lightbox-arrow:hover,.species-lightbox-close:hover{background:color-mix(in srgb, var(--gold) 90%, transparent)}.species-gallery-arrow.previous,.species-lightbox-arrow.previous{left:14px}.species-gallery-arrow.next,.species-lightbox-arrow.next{right:14px}.species-gallery-caption{z-index:2;border-radius:var(--radius-md);background:color-mix(in srgb, var(--grey-850) 70%, transparent);pointer-events:none;min-width:0;padding:8px 12px;position:absolute;bottom:17px;left:20px;right:20px}.specimen-panel .species-gallery-caption p{color:var(--surface-warm);font-size:var(--text-base);text-overflow:ellipsis;text-shadow:0 1px 10px color-mix(in srgb, var(--black) 60%, transparent);white-space:nowrap;margin:0 0 4px;line-height:1.3;overflow:hidden}.species-gallery-caption a{color:inherit;pointer-events:auto;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--white) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--white) 40%, transparent);text-underline-offset:2px;font-weight:800}.species-gallery-caption>span{color:var(--paper);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;display:block;overflow:hidden}.species-gallery-thumbnails{border-top:1px solid color-mix(in srgb, var(--white) 10%, transparent);background:var(--grey-850);scrollbar-color:var(--clay) transparent;scrollbar-width:thin;gap:8px;min-height:84px;padding:12px 16px;display:flex;overflow-x:auto}.species-gallery-thumbnails button{border-radius:var(--radius-sm);background:var(--black);opacity:.58;cursor:pointer;border:2px solid #0000;width:72px;min-width:72px;transition:border-color .16s,opacity .16s,transform .16s;position:relative;overflow:hidden}.species-gallery-thumbnails button:hover{opacity:.88;transform:translateY(-1px)}.species-gallery-thumbnails button.active{border-color:var(--apricot);opacity:1}.species-gallery-thumbnails img{object-fit:cover}.species-lightbox{background:color-mix(in srgb, var(--black) 90%, transparent);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--surface-warm);border:0;margin:0;padding:24px}.species-lightbox::backdrop{background:color-mix(in srgb, var(--black) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.species-lightbox-content{border:1px solid color-mix(in srgb, var(--white) 10%, transparent);border-radius:var(--radius-md);background:var(--black);width:min(1440px,100%);height:100%;box-shadow:var(--shadow-xl);margin:0 auto;position:relative;overflow:hidden}.species-lightbox-image{position:absolute;inset:0 0 76px}.species-lightbox-image img{object-fit:contain}.species-lightbox-caption{justify-content:space-between;align-items:baseline;gap:24px;display:flex;position:absolute;bottom:18px;left:24px;right:24px}.species-lightbox-caption p{font-size:var(--text-base);margin:0}.species-lightbox-caption a{color:var(--apricot);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.species-lightbox-close{z-index:2;width:46px;height:46px;position:absolute;top:18px;right:18px}.species-lightbox-arrow{z-index:2;width:54px;height:54px;position:absolute;top:calc(50% - 38px);transform:translateY(-50%)}.species-gallery button:focus-visible,.species-lightbox button:focus-visible,.species-lightbox a:focus-visible{outline:3px solid var(--warning-surface);outline-offset:3px}@media (max-width:760px){.species-gallery-thumbnails{min-height:72px;padding:8px 12px}.species-gallery-thumbnails button{width:62px;min-width:62px}.species-gallery-toolbar button>span{display:none}.species-gallery-caption{bottom:13px;left:16px;right:16px}.species-gallery-caption>span{display:none}.species-gallery-arrow{width:38px;height:38px}.species-lightbox{padding:0}.species-lightbox-content{border:0;border-radius:0}.species-lightbox-image{inset:0 0 92px}.species-lightbox-caption{display:block;bottom:20px;left:18px;right:18px}.species-lightbox-caption p{margin-bottom:4px}.species-lightbox-arrow{width:46px;height:46px}}
