.species-picker-native { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip-path:inset(50%) !important; opacity:0 !important; pointer-events:none !important; }
.species-picker-trigger { width:100%; min-height:44px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; background:white; color:var(--navy,#173c5b); border:1px solid var(--border,#bac6cf); border-radius:6px; font:inherit; text-align:left; cursor:pointer; }
.species-picker-trigger:focus-visible { outline:3px solid #75b5df; outline-offset:2px; }
.species-picker-trigger:disabled { opacity:.55; cursor:default; }
.species-picker-trigger span:last-child { font-size:12px; }
.species-picker-popup { position:fixed; z-index:10000; width:660px; max-width:calc(100vw - 24px); background:#fff; color:#173c5b; border:1px solid #b8c9d5; border-radius:10px; box-shadow:0 14px 45px #142e4933; overflow:auto; }
.species-picker-popup[hidden] { display:none; }
.species-picker-heading { display:flex; justify-content:space-between; align-items:center; padding:10px 14px; border-bottom:1px solid #dce5eb; font-weight:700; font-size:16px; }
.species-picker-close { border:0; background:transparent; color:inherit; font-size:24px; min-width:36px; min-height:36px; cursor:pointer; }
.species-picker-body { display:grid; grid-template-columns:220px 1fr; }
.species-picker-options { max-height:390px; overflow:auto; padding:6px; border-right:1px solid #dce5eb; }
.species-picker-option { display:flex; align-items:center; gap:8px; width:100%; min-height:38px; padding:9px 10px; border:0; border-radius:5px; background:#fff; color:#173c5b; font:inherit; font-size:14px; text-align:left; cursor:pointer; }
.species-picker-option:hover,.species-picker-option:focus-visible { background:#edf5fb; outline:2px solid #75b5df; outline-offset:-2px; }
.species-picker-option[aria-selected=true] { background:#e0eef8; font-weight:700; }
.species-picker-option .species-picker-check { width:16px; flex-shrink:0; }
.species-picker-preview { min-width:0; display:flex; flex-direction:column; justify-content:center; padding:14px; }
.species-picker-preview img { display:block; width:100%; aspect-ratio:3/2; object-fit:contain; background:white; }
.species-picker-preview-name { margin:8px 0 2px; text-align:center; font-size:16px; font-weight:700; }
.species-picker-help { margin:6px 0 12px; text-align:center; font-size:14px; color:#516575; }
.species-picker-choose { align-self:center; padding:10px 18px; border:0; border-radius:6px; background:#173c5b; color:#fff; font:inherit; font-size:14px; font-weight:700; cursor:pointer; min-height:44px; }
.species-picker-error { text-align:center; font-size:14px; }
@media(max-width:560px) { .species-picker-body { grid-template-columns:1fr; } .species-picker-options { max-height:180px; border-right:0; border-bottom:1px solid #dce5eb; } .species-picker-preview { padding:8px 12px 12px; } .species-picker-preview img { max-height:160px; } .species-picker-help { margin:4px 0 8px; } }
@media print { .species-picker-popup { display:none !important; } }

.species-picker-preview .species-picker-image {width:100%;height:280px;aspect-ratio:auto;object-fit:cover;background:#f5f1e9;border-radius:5px;}
.species-picker-preview .species-picker-image[hidden]{display:none;}
@media(max-width:560px){.species-picker-preview .species-picker-image{height:150px;max-height:150px;object-fit:cover;}.species-picker-options{max-height:160px;}}
