/* The original select keeps its layout, form ownership and native validation.
   Only its opened mobile chooser is drawn by the application. */
body.mobile-ui-active [data-mobile-select-picker] {
  position:fixed!important; inset:auto!important;
  left:var(--msp-left,0px)!important; top:var(--msp-top,0px)!important;
  width:var(--msp-width,100vw)!important; height:var(--msp-height,100dvh)!important;
  max-width:none!important; max-height:none!important; min-width:0!important; min-height:0!important;
  box-sizing:border-box!important; margin:0!important; padding:12px!important;
  border:0!important; border-radius:0!important; background:transparent!important;
  color:#173557!important; box-shadow:none!important; overflow:hidden!important;
  z-index:2147483000!important; font-family:inherit!important; font-size:15px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  transform:none!important; overscroll-behavior:contain;
  -webkit-text-size-adjust:100%; text-size-adjust:100%;
}
body.mobile-ui-active dialog[data-mobile-select-picker]::backdrop { background:rgba(25,49,82,.27); }
body.mobile-ui-active div[data-mobile-select-picker] { background:rgba(25,49,82,.27)!important; }
body.mobile-ui-active [data-mobile-select-picker] .msp-card {
  display:flex!important; flex-direction:column!important; align-items:stretch!important;
  box-sizing:border-box!important; width:100%!important; max-width:420px!important; min-width:0!important;
  margin:0!important; padding:0!important; overflow:hidden!important;
  background:#fff!important; color:#173557!important; border:1px solid #dce8fb!important;
  border-radius:16px!important; box-shadow:0 14px 42px #173c642b!important;
  font-family:inherit!important; font-size:15px!important; line-height:1.45!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-header {
  display:flex!important; flex:0 0 auto!important; align-items:center!important; gap:12px!important;
  margin:0!important; padding:6px 10px 6px 16px!important;
  border:0!important; border-bottom:1px solid #e8effb!important;
  background:linear-gradient(120deg,#f4f9ff,#fff)!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-title {
  flex:1 1 auto!important; min-width:0!important; margin:0!important; padding:0!important;
  color:#173557!important; font-size:15px!important; font-weight:650!important;
  line-height:1.45!important; white-space:normal!important; overflow-wrap:anywhere!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-close {
  display:block!important; flex:0 0 auto!important; width:auto!important; min-width:44px!important; min-height:40px!important;
  margin:0!important; padding:8px!important; border:0!important; border-radius:8px!important;
  background:transparent!important; box-shadow:none!important; color:#2964be!important;
  font:inherit!important; font-size:14px!important; line-height:20px!important; cursor:pointer;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-search-wrap {
  display:block!important; flex:0 0 auto!important; margin:0!important; padding:10px 12px 6px!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-search-wrap[hidden] { display:none!important; }
body.mobile-ui-active [data-mobile-select-picker] .msp-search {
  display:block!important; box-sizing:border-box!important; width:100%!important; min-width:0!important;
  height:40px!important; margin:0!important; padding:8px 10px!important;
  border:1px solid #dce7f8!important; border-radius:9px!important;
  background:#f5f8fd!important; color:#173557!important; box-shadow:none!important;
  font-family:inherit!important; font-size:16px!important; line-height:22px!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-options {
  display:block!important; position:relative!important; flex:1 1 auto!important;
  min-height:0!important; min-width:0!important; margin:0!important; padding:5px 8px 8px!important;
  overflow-x:hidden!important; overflow-y:auto!important; overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch; scrollbar-width:thin;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-option {
  display:flex!important; position:relative!important; box-sizing:border-box!important;
  align-items:center!important; justify-content:space-between!important; gap:12px!important;
  width:100%!important; min-width:0!important; min-height:44px!important; height:auto!important;
  margin:2px 0!important; padding:10px 10px!important;
  border:0!important; border-radius:9px!important; background:#fff!important; box-shadow:none!important;
  color:#23415e!important; text-align:left!important; text-transform:none!important;
  font-family:inherit!important; font-size:15px!important; font-weight:400!important; line-height:1.5!important;
  white-space:normal!important; overflow:visible!important; cursor:pointer;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-option-label {
  display:block!important; flex:1 1 auto!important; min-width:0!important; margin:0!important; padding:0!important;
  color:inherit!important; font:inherit!important; white-space:normal!important;
  overflow-wrap:anywhere!important; word-break:normal!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-mark {
  display:block!important; flex:0 0 18px!important; width:18px!important;
  color:#2469df!important; font-size:17px!important; line-height:22px!important;
}
body.mobile-ui-active [data-mobile-select-picker] .msp-option[aria-selected=true] { background:#edf4ff!important; color:#155ac1!important; font-weight:600!important; }
body.mobile-ui-active [data-mobile-select-picker] .msp-option:disabled { color:#8c99a9!important; cursor:default!important; opacity:1!important; }
body.mobile-ui-active [data-mobile-select-picker] .msp-group { margin:6px 10px 2px!important; padding:0!important; color:#687e97!important; font-size:13px!important; font-weight:600!important; }
body.mobile-ui-active [data-mobile-select-picker] .msp-empty { margin:0!important; padding:22px 12px!important; color:#6e8198!important; font-size:14px!important; text-align:center!important; }
body.mobile-ui-active [data-mobile-select-picker] :is(.msp-option,.msp-close,.msp-search):focus-visible { outline:2px solid #77a7f4!important; outline-offset:-2px!important; }
