.adoption-animal-picker { position:relative; min-width:0; }
.picker-required { color:var(--muted,#64716a); font-size:.8rem; font-weight:400; }
.adoption-animal-picker .picker-help { margin:0 0 5px; color:var(--muted,#64716a); font-size:.9rem; }
.animal-selection-tags { display:flex; flex-wrap:wrap; gap:8px; }
.animal-selection-tags:empty { display:none; }
.animal-selection-tag { display:inline-flex; align-items:center; gap:8px; padding:6px 8px 6px 13px; border-radius:8px; color:#244436; background:#e6eee6; font-size:.9rem; font-weight:600; }
.animal-selection-tag button { display:grid; place-items:center; border:0; border-radius:5px; width:28px; height:28px; background:transparent; color:inherit; font-size:1.3rem; cursor:pointer; }
.animal-selection-tag button:hover { background:#cfdece; }
.animal-multiselect-control { position:relative; }
.animal-search-box { display:flex; align-items:center; gap:10px; padding:0 12px; background:#fffefa; border:1px solid #aebbb2; border-radius:10px; }
.animal-search-box:focus-within { border-color:#294b39; box-shadow:0 0 0 3px #294b3918; }
.animal-search-box>svg { flex-shrink:0; stroke:#627367; fill:none; stroke-width:1.8; }
.adoption-animal-picker .animal-search-box input { min-width:0; padding:14px 0; flex:1; width:100%; border:0; border-radius:0; background:transparent; outline:0; box-shadow:none; font-size:1rem; }
.animal-search-box input::-webkit-search-cancel-button { cursor:pointer; }
.animal-search-box button { display:grid; place-items:center; padding:8px; background:transparent; border:0; color:#294b39; cursor:pointer; }
.animal-search-box button svg { fill:none; stroke:currentColor; stroke-width:1.8; }
.animal-dropdown { position:absolute; z-index:20; top:calc(100% + 7px); left:0; width:100%; border:1px solid #ccd5cd; border-radius:12px; background:#fffefa; box-shadow:0 14px 30px #263e2e1f; overflow:hidden; }
.animal-dropdown[hidden] { display:none; }
.animal-options-count { margin:0; padding:12px 16px; color:#64716a; font-size:.8rem; border-bottom:1px solid #e4e8df; }
.animal-options-list { max-height:280px; overflow-y:auto; overscroll-behavior:contain; padding:4px; }
.animal-multi-option { display:flex; align-items:center; text-align:left; gap:12px; width:100%; min-height:66px; padding:10px 12px; border:0; border-radius:7px; background:transparent; color:#26382d; cursor:pointer; font-family:inherit; }
.animal-multi-option:hover,.animal-multi-option.is-active { background:#f1f3ec; }
.animal-multi-option[aria-selected="true"] { background:#eaf1e7; }
.animal-check { flex-shrink:0; width:21px; height:21px; border:1px solid #9eaea1; border-radius:5px; display:grid; place-items:center; font-size:15px; font-weight:700; }
[aria-selected="true"]>.animal-check { color:white; border-color:#2e513c; background:#2e513c; }
.animal-option-copy { min-width:0; flex:1; display:grid; gap:3px; }
.animal-option-copy strong { font-size:.99rem; }
.animal-option-copy small { color:#64716a; font-size:.76rem; line-height:1.4; }
.animal-program-badge { flex-shrink:0; background:#edf0e7; color:#53644b; border-radius:5px; padding:4px 8px; font-size:.7rem; font-weight:700; }
.animal-program-badge.pupp { background:#e4eeeb; color:#31685c; }
.animal-dropdown-footer { display:flex; align-items:center; justify-content:space-between; padding:10px 16px; border-top:1px solid #e4e8df; font-size:.8rem; color:#64716a; }
.animal-dropdown-footer button { border:0; border-radius:6px; padding:8px 18px; background:#2e513c; color:#fff; cursor:pointer; font-size:.85rem; font-weight:600; }
.animal-selection-status { margin:0; color:#526d55; font-size:.8rem; min-height:0; }
.animal-selection-status:empty { display:none; }
.animal-empty { padding:12px; font-size:.9rem; color:#64716a; }
.adoption-animal-picker button:focus-visible { outline:2px solid #ad580b; outline-offset:2px; }
@media(max-width:600px) { .animal-options-list { max-height:248px; } .animal-multi-option { gap:9px; padding:10px 8px; } .animal-selection-tag { max-width:100%; } .animal-program-badge { padding:4px 6px; } }
