/* Desplegables a medida (js/selector.js): idioma en la cabecera, excursión y zona en el formulario de reserva. */
.selector{position:relative;min-width:0}
.selector-boton{display:flex;align-items:center;gap:12px;width:100%;cursor:pointer;text-align:left;font:inherit;border:0}
.selector-flecha{width:18px;height:18px;flex:none;margin-left:auto;transition:transform .25s var(--facil)}
.selector.abierto .selector-flecha{transform:rotate(180deg)}
.selector-texto{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selector-panel{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:70;background:#fff;color:var(--tinta);border-radius:16px;box-shadow:0 24px 60px rgba(4,14,32,.28),0 0 0 1px rgba(4,14,32,.06);padding:8px;animation:panelIn .22s var(--facil)}
.selector.arriba .selector-panel{top:auto;bottom:calc(100% + 8px)}
@keyframes panelIn{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
.selector.arriba .selector-panel{animation-name:panelInArriba}
@keyframes panelInArriba{from{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}
.selector-lista{list-style:none;margin:0;padding:0;max-height:min(360px,55svh);overflow-y:auto;overscroll-behavior:contain;outline:none}
.selector-lista [role="option"]{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background-color .12s ease}
.selector-lista [role="option"].activo{background:#EEF2F6}
.selector-lista [role="option"][aria-selected="true"]{background:#E3EBF5}
.selector-lista [role="option"][aria-selected="true"]::after{content:"";width:16px;height:16px;flex:none;margin-left:6px;background:var(--azul);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5 9-10' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5 9-10' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.selector-lista [role="option"][hidden],.selector-grupo[hidden]{display:none}
.selector-grupo{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-suave);padding:12px 12px 6px}
.selector-buscar{width:100%;min-height:46px!important;margin-bottom:6px;padding:10px 14px 10px 40px!important;border-radius:10px!important;border:1.5px solid var(--linea-clara)!important;background:#F6F8FB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A5A70' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") 13px center/18px no-repeat!important;font:inherit;font-size:16px;color:var(--tinta)}
.selector-buscar:focus{outline:none;border-color:var(--azul)!important;background-color:#fff!important}
.selector-vacio{padding:16px 12px;color:var(--tinta-suave);font-size:15px}

/* ---- campo del formulario (fondo claro) ---- */
.campo .selector-boton{min-height:54px;padding:8px 14px;border-radius:12px;border:1.5px solid var(--linea-clara);background:#fff;color:var(--tinta);transition:border-color .2s ease, box-shadow .2s ease}
.campo .selector-boton:hover{border-color:#B9C5D2}
.campo .selector.abierto .selector-boton,.campo .selector-boton:focus-visible{outline:none;border-color:var(--azul);box-shadow:0 0 0 4px rgba(0,45,98,.12)}
.selector-rico img{width:52px;height:40px;object-fit:cover;border-radius:8px;flex:none}
.sel-info{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.sel-info b{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sel-info span{font-size:13px;color:var(--tinta-suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sel-precio{margin-left:auto;flex:none;text-align:right;font-family:var(--titulos);font-weight:800;font-stretch:112%;font-size:15px;color:var(--azul);line-height:1.1}
.sel-precio small{display:block;font-family:var(--fuente);font-weight:600;font-size:11px;color:var(--tinta-suave)}
.selector-rico .selector-boton .sel-precio{margin-left:auto}
.selector-rico .selector-boton .selector-flecha{margin-left:4px}
.selector-simple .selector-boton{font-size:16px}

/* ---- idioma en la cabecera (fondo oscuro) ---- */
.idioma{padding:0!important;background:none!important}
.selector-idioma .selector-boton{height:44px;padding:0 12px 0 14px;gap:8px;border-radius:999px;background:var(--tenue);color:#fff;font-weight:700;font-size:14px;transition:background-color .2s ease}
.selector-idioma .selector-boton:hover,.selector-idioma.abierto .selector-boton{background:var(--tenue-2)}
.selector-idioma .selector-flecha{width:14px;height:14px;margin-left:0}
.selector-globo{width:16px;height:16px;flex:none}
.selector-idioma .selector-panel{left:auto;right:0;width:220px}
.sel-cod{display:inline-grid;place-items:center;width:34px;height:26px;border-radius:6px;background:#EEF2F6;font-family:var(--titulos);font-weight:800;font-stretch:112%;font-size:12px;color:var(--azul);flex:none}
.selector-idioma [aria-selected="true"] .sel-cod{background:var(--azul);color:#fff}
@media (max-width:420px){.selector-globo{display:none}.selector-idioma .selector-boton{padding:0 10px}}
@media (max-width:560px){.selector-rico .selector-boton .sel-info span{display:none}}
@media (prefers-reduced-motion: reduce){.selector-panel{animation:none}}
