/* Gemeinsame Dropdown-Gestaltung; native Bedienung und Formularwerte erhalten. */
html body select:not([multiple]):not([size]),
html body select[size="1"] {
 appearance:none!important;
 border:1px solid #cdd7e3!important;border-radius:10px!important;
 background-color:#fff!important;color:#24364c;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23536982' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
 background-repeat:no-repeat!important;background-position:right 10px center!important;background-size:18px!important;
 padding:9px 36px 9px 12px!important;line-height:1.4;
 box-shadow:0 2px 5px #20344b08!important;
 transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
 cursor:pointer;
}
html body select:not([multiple]):hover:not(:disabled) {border-color:#8299b4!important;background-color:#fbfcff!important;}
html body select:focus-visible {
 outline:3px solid #2474c633!important;outline-offset:2px;
 border-color:#2474c6!important;box-shadow:0 0 0 1px #2474c6!important;
}
html body select:disabled {opacity:.6;cursor:not-allowed;background-color:#f0f3f7!important;}
html body select:is(.invalid,.is-invalid,[aria-invalid="true"]) {border-color:#c63844!important;}
html body select option,html body select optgroup {background:#fff;color:#24364c;}
html body select optgroup {font-weight:700;}
html body select[multiple],html body select[size]:not([size="1"]) {
 border:1px solid #cdd7e3!important;border-radius:10px!important;padding:6px!important;background:#fff;
}
html body .dropdown-menu {
 padding:7px!important;border:1px solid #dce4ee!important;border-radius:14px!important;
 background:#fff!important;color:#24364c!important;
 box-shadow:0 14px 38px #1d314b26,0 3px 8px #1d314b0a!important;
}
html body .dropdown-menu .dropdown-item {
 border-radius:8px!important;padding:10px 12px!important;line-height:1.45!important;
 font-weight:500;color:#30435b!important;
 transition:background-color .16s ease,color .16s ease;
}
html body .dropdown-menu .dropdown-item:is(:hover,:focus-visible) {
 background:#edf3fb!important;color:#164e91!important;
}
html body .dropdown-menu .dropdown-item:is(.active,:active,[aria-current="page"]) {
 background:#e3eefb!important;color:#134881!important;font-weight:650;
}
html body .dropdown-menu .dropdown-item:is(.disabled,:disabled) {opacity:.45;pointer-events:none;}
html body .dropdown-menu .dropdown-divider {border-top-color:#e4eaf1!important;margin:7px 6px!important;}
html body .dropdown-menu .dropdown-header {color:#75839a;font-size:.75rem;font-weight:700;letter-spacing:.035em;padding:9px 12px;}
/* Navigation: dunkle Flächen passen zur animierten Kopfzeile. */
html body nav.navbar #navbarContent .dropdown-menu {
 background:#111c2b!important;border-color:#344256!important;
 box-shadow:0 14px 35px #0005!important;
}
html body nav.navbar #navbarContent .dropdown-menu .dropdown-item {color:#e8eef7!important;}
html body nav.navbar #navbarContent .dropdown-menu .dropdown-item:is(:hover,:focus-visible) {
 background:#263b54!important;color:#fff!important;
}
html body nav.navbar #navbarContent .dropdown-menu .dropdown-item:is(.active,:active,[aria-current="page"]) {
 background:#334a66!important;color:#fff!important;box-shadow:inset 3px 0 #e5b853;
}
html body nav.navbar #navbarContent .dropdown-menu .dropdown-divider {border-top-color:#344256!important;}
@media(pointer:coarse) {
 html body select:not([multiple]):not([size]),html body select[size="1"] {min-height:44px;font-size:16px;}
 html body .dropdown-menu .dropdown-item {min-height:44px;}
}
@media(prefers-reduced-motion:reduce) {
 html body select,html body .dropdown-menu .dropdown-item {transition:none!important;}
}

/* Unterstützte Browser: auch die echte Optionsliste passend zum Feld gestalten. */
@supports (appearance:base-select) {
  html body select:not([multiple]):not([size]),html body select[size="1"],
  html body select:not([multiple]):not([size])::picker(select),html body select[size="1"]::picker(select) {
   appearance:base-select!important;
  }
  html body select:not([multiple]):not([size])::picker(select),html body select[size="1"]::picker(select) {
   min-width:anchor-size(width);max-width:calc(100vw - 24px);max-height:min(360px,60vh);
   margin:4px 0 0;border:1px solid #cdd7e3;border-radius:12px;padding:5px;
   background:#fff;color:#24364c;box-shadow:0 12px 30px #1d314b26;
   overflow:auto;scrollbar-width:thin;
  }
  html body select::picker-icon {display:none;}
  html body select:open {border-color:#2474c6!important;background-color:#f5f9ff!important;}
  html body select:not([multiple]):not([size]) option,html body select[size="1"] option {
   padding:9px 11px;border-radius:7px;min-height:36px;gap:8px;white-space:normal;
  }
  html body select option:checked {background:#e3eefb;color:#134881;font-weight:650;}
  html body select option:is(:hover,:focus) {background:#edf3fb;color:#164e91;outline:none;}
  html body select option:disabled {opacity:.5;}
}

/* Vorwahl und Telefonnummer bleiben eine kompakte gemeinsame Eingabezeile. */
html body select:is([name="telefon_country"],[name="notfall_country"],[name$="[telefon_country]"],[name$="[notfall_country]"],[data-family-phone-country]) {
 box-sizing:border-box!important;height:42px!important;min-height:42px!important;max-height:42px!important;
 min-width:0!important;max-width:45%;flex-shrink:0!important;
 padding:8px 28px 8px 10px!important;white-space:nowrap!important;
 overflow:hidden;text-overflow:ellipsis;line-height:24px!important;
 background-position:right 7px center!important;
 border-top-right-radius:0!important;border-bottom-right-radius:0!important;
}
html body select:is([name="telefon_country"],[name="notfall_country"],[name$="[telefon_country]"],[name$="[notfall_country]"],[data-family-phone-country]) + input[type="tel"] {
 box-sizing:border-box!important;min-width:0!important;flex:1 1 0!important;
 height:42px!important;min-height:42px!important;max-height:42px!important;
 border-top-left-radius:0!important;border-bottom-left-radius:0!important;
}
