/*
  IngSoft V84.19 — Selectores con contraste estructural total
  Objetivo: garantizar legibilidad real en todos los objetos <select> y sus opciones,
  sin parches locales, manteniendo la barra de idioma oscura y el resto de formularios
  como superficies claras de lectura.
*/

:root{
  --v8419-field-bg:#FFFFFF;
  --v8419-field-text:#07172C;
  --v8419-field-muted:#5C7590;
  --v8419-field-border:#B9D9ED;
  --v8419-field-border-strong:#58B8EA;
  --v8419-field-shadow:0 0 0 3px rgba(88,184,234,.18);
  --v8419-menu-bg:#FFFFFF;
  --v8419-menu-text:#07172C;
  --v8419-menu-hover:#EAF7FF;
  --v8419-menu-selected:#D9F1FF;
}

/* 1) Base semántica para menús reales */
body select{
  color-scheme:light !important;
}
body select option,
body select optgroup{
  background:var(--v8419-menu-bg) !important;
  color:var(--v8419-menu-text) !important;
  -webkit-text-fill-color:var(--v8419-menu-text) !important;
}
body select option:hover,
body select option:focus{
  background:var(--v8419-menu-hover) !important;
  color:var(--v8419-menu-text) !important;
}
body select option:checked,
body select option[selected]{
  background:var(--v8419-menu-selected) !important;
  color:var(--v8419-menu-text) !important;
}

/* 2) Selectores de contenido: siempre como campo claro legible */
body select:not([data-i18n-select]):not(.langbar-select):not(.lang-select){
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  background-color:var(--v8419-field-bg) !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M5 7.5l5 5 5-5' fill='none' stroke='%2307172C' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 0.95rem center !important;
  background-size:1rem 1rem !important;
  color:var(--v8419-field-text) !important;
  -webkit-text-fill-color:var(--v8419-field-text) !important;
  border:1.5px solid var(--v8419-field-border) !important;
  border-radius:14px !important;
  padding-right:2.75rem !important;
  box-shadow:none !important;
}
body select:not([data-i18n-select]):not(.langbar-select):not(.lang-select):focus,
body select:not([data-i18n-select]):not(.langbar-select):not(.lang-select):focus-visible{
  border-color:var(--v8419-field-border-strong) !important;
  box-shadow:var(--v8419-field-shadow) !important;
  outline:none !important;
}
body select:not([data-i18n-select]):not(.langbar-select):not(.lang-select):disabled{
  background-color:#F3F7FB !important;
  color:var(--v8419-field-muted) !important;
  -webkit-text-fill-color:var(--v8419-field-muted) !important;
  border-color:#D7E6F1 !important;
  cursor:not-allowed !important;
}

/* 3) Refuerzo semántico en bloques de formulario institucionales */
body :is(.assistant-controls,.scientific-assistant,.contact-card,.contact-form-shell,.contact-clean-form-card,.citation-field,.contact-clean-form-card,.contact-form-card,.panel,.mini-panel) select:not([data-i18n-select]){
  background-color:var(--v8419-field-bg) !important;
  color:var(--v8419-field-text) !important;
  -webkit-text-fill-color:var(--v8419-field-text) !important;
  border-color:var(--v8419-field-border) !important;
}

/* 4) Barra de idioma: conservar estética oscura colapsada, pero menú legible al abrir */
body [data-i18n-select],
body .v93-language-switch select,
body .v94-language-switch select,
body .v95-language-switch select,
body .v8099-langbar select{
  color-scheme:dark !important;
}
body [data-i18n-select] option,
body [data-i18n-select] optgroup,
body .v93-language-switch select option,
body .v94-language-switch select option,
body .v95-language-switch select option,
body .v8099-langbar select option{
  background:#FFFFFF !important;
  color:#07172C !important;
  -webkit-text-fill-color:#07172C !important;
}

/* 5) Firefox: respetar color del texto del control desplegable */
@-moz-document url-prefix(){
  body select{
    text-shadow:none !important;
  }
}
