/* museu/assets/seletor.css — menu suspenso dos filtros (assets/seletor.js), no estilo do museu:
   painel escuro com moldura dourada. Vale para o site público e para o painel da equipe. */
.seletor { position: relative; display: inline-block; min-width: 220px; }
.seletor-nativo { position: absolute !important; inset: 0; width: 100%; height: 100%; opacity: 0; pointer-events: none; }
.seletor-botao { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 42px; padding: .5rem .9rem; border: 1px solid rgba(201, 164, 108, .45); border-radius: 0;
  background: linear-gradient(180deg, rgba(42, 27, 18, .95), rgba(18, 11, 8, .95)); color: #f1dfc0; font-family: "Lora", Georgia, serif; font-size: .95rem; text-align: left; cursor: pointer; transition: border-color .2s, box-shadow .2s; }
.seletor-botao:hover { border-color: #c9a46c; }
.seletor-botao:focus-visible, .seletor.aberto .seletor-botao { outline: 0; border-color: #ecd3a6; box-shadow: 0 0 0 3px rgba(201, 164, 108, .2), 0 0 22px -6px rgba(236, 211, 166, .35); }
.seletor-botao:disabled { opacity: .5; cursor: not-allowed; }
.seletor-valor { flex: 1; min-width: 0; display: flex; align-items: center; gap: 9px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.seletor.vazio .seletor-valor { color: #9a8669; }
.seletor-seta { flex-shrink: 0; font-size: .72em; color: #c9a46c; transition: transform .2s; }
.seletor.aberto .seletor-seta { transform: rotate(180deg); color: #ecd3a6; }
.seletor-icone { flex-shrink: 0; width: 16px; text-align: center; font-size: .88em; color: #c9a46c; }

.seletor-painel { position: absolute; z-index: 1060; top: calc(100% + 6px); left: 0; min-width: 100%; padding: 6px; border: 1px solid rgba(201, 164, 108, .6);
  background: linear-gradient(170deg, #2e1d13, #1a110c); box-shadow: 0 0 0 4px rgba(18, 11, 8, .9), 0 24px 50px -16px #000, 0 0 40px -20px rgba(201, 164, 108, .4);
  animation: seletor-abrir .16s ease-out; }
@keyframes seletor-abrir { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.seletor.para-cima .seletor-painel { top: auto; bottom: calc(100% + 6px); }
.seletor.alinhar-direita .seletor-painel { left: auto; right: 0; }
.seletor-busca { width: 100%; margin-bottom: 6px; padding: 8px 10px; border: 1px solid rgba(201, 164, 108, .35); background: rgba(8, 5, 3, .7); color: #f1dfc0; font-family: "Lora", Georgia, serif; font-size: .9rem; }
.seletor-busca:focus { outline: 0; border-color: #c9a46c; }
.seletor-busca::placeholder { color: #8f7b62; font-style: italic; }
.seletor-lista { list-style: none; margin: 0; padding: 0; max-height: 300px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #5a4430 transparent; }
.seletor-item { display: flex; align-items: center; gap: 10px; padding: 9px 12px; color: #e8d3b4; font-family: "Lora", Georgia, serif; font-size: .93rem; white-space: nowrap; cursor: pointer; transition: background .12s; }
.seletor-item + .seletor-item { border-top: 1px solid rgba(201, 164, 108, .1); }
.seletor-item.no-grupo { padding-left: 22px; }
.seletor-item.ativo { background: rgba(201, 164, 108, .14); color: #fff3dc; }
.seletor-item.selecionado { color: #ecd3a6; font-weight: 600; }
.seletor-item.selecionado .seletor-icone { color: #ecd3a6; }
.seletor-item.desativado { color: #6f5f4c; cursor: default; }
.seletor-texto { flex: 1; overflow: hidden; text-overflow: ellipsis; }
.seletor-marca { visibility: hidden; font-size: .8em; color: #c9a46c; }
.seletor-item.selecionado .seletor-marca { visibility: visible; }
.seletor-cor { flex-shrink: 0; width: 9px; height: 9px; border-radius: 50%; }
.seletor-grupo { padding: 8px 12px 4px; font-family: "Cinzel", Georgia, serif; font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; color: #c9a46c; }
.seletor.invalido .seletor-botao { border-color: #c4604a; box-shadow: 0 0 0 3px rgba(196, 96, 74, .2); }
.modal .seletor, .form-control + .seletor { display: block; min-width: 0; }
@media (max-width: 575.98px) {
  .seletor { min-width: 0; }
  .seletor-botao, .seletor-busca { font-size: 16px; }
  .seletor-painel { max-width: calc(100vw - 24px); }
}
@media (prefers-reduced-motion: reduce) { .seletor-painel { animation: none; } }
