.vm-birth-time { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; width: 100%; }
.vm-birth-time-part { min-width: 0; }
.vm-birth-time .vm-birth-time-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.vm-birth-time .vm-birth-time-part :is(select, .vm-time-trigger) { box-sizing: border-box; display: block; width: 100%; min-height: 48px; margin: 0; padding: 12px 36px 12px 14px; appearance: none; border: 1px solid rgba(237, 231, 218, .2); border-radius: 10px; background-color: #1a1730; color: #ede7da; color-scheme: dark; font-family: inherit; font-size: 15px; font-weight: 400; line-height: 1.5; text-align: left; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D4AF6A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px; }
.vm-birth-time select:focus-visible { outline: 2px solid #d4af6a; outline-offset: 2px; border-color: #d4af6a; }
.vm-birth-time select option { background: #1a1730; color: #ede7da; }
.vm-birth-time .vm-birth-time-unknown { grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 10px; width: fit-content; margin: 0; color: #cbc2ae; font-size: 14px; font-weight: 400; line-height: 1.5; text-transform: none; letter-spacing: normal; cursor: pointer; }
/* Always the native checkbox in gold: page styles (Tailwind forms on profile, the
   compatibility drawer's input rule) would otherwise restyle or stretch it. */
.vm-birth-time .vm-birth-time-unknown input { appearance: auto; flex: none; box-sizing: border-box; width: 18px; height: 18px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 3px; background: none; box-shadow: none; accent-color: #d4af6a; cursor: pointer; }
.vm-birth-time .vm-birth-time-unknown input:focus-visible { outline: 2px solid #d4af6a; outline-offset: 2px; }
.vm-time-select { position: relative; }
.vm-birth-time .vm-time-enhanced > select { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; margin: 0; opacity: 0; pointer-events: none; border: 0; }
.vm-birth-time .vm-time-trigger { cursor: pointer; }
.vm-birth-time .vm-time-trigger:focus-visible { outline: 2px solid #d4af6a; outline-offset: 2px; }
.vm-birth-time .vm-time-trigger[aria-expanded="true"] { border-color: #d4af6a; }
.vm-birth-time .vm-time-trigger[aria-invalid="true"] { border-color: #e8a6a6; }
.vm-birth-time .vm-time-trigger:disabled { cursor: not-allowed; opacity: .6; }
.vm-time-menu { box-sizing: border-box; position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 70; overflow-y: auto; overscroll-behavior: contain; max-height: 220px; margin: 0; padding: 4px; list-style: none; border: 1px solid rgba(212, 175, 106, .4); border-radius: 10px; background: #1a1730; color: #ede7da; box-shadow: 0 8px 24px rgba(0, 0, 0, .3); scrollbar-width: thin; scrollbar-color: #877e6c #1a1730; }
.vm-time-opens-up .vm-time-menu { top: auto; bottom: calc(100% + 4px); }
.vm-time-menu [role="option"] { padding: 9px 12px; border-radius: 6px; cursor: pointer; font: 400 14px/1.5 'Jost', sans-serif; text-align: left; }
.vm-time-menu [role="option"]:hover,
.vm-time-menu [data-active="true"] { background: rgba(212, 175, 106, .16); color: #e8c687; }
.vm-time-menu [aria-selected="true"] { color: #e8c687; font-weight: 500; }
.vm-time-menu[hidden], .vm-time-error[hidden] { display: none; }
.vm-time-error { display: block; margin-top: 6px; color: #e8a6a6; font-size: 12px; line-height: 1.5; }
.vm-place-field { position: relative; width: 100%; min-width: 0; }
.vm-place-suggestions { position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 60; max-height: 220px; overflow-y: auto; margin: 0; padding: 0; list-style: none; background: #1a1730; color: #ede7da; border: 1px solid rgba(212, 175, 106, .4); border-radius: 10px; box-shadow: 0 8px 24px rgba(0, 0, 0, .25); text-align: left; font-family: inherit; font-size: 14px; line-height: 1.5; }
.vm-place-suggestions[hidden] { display: none; }
.vm-place-suggestions li { padding: 11px 16px; }
.vm-place-suggestions [role="option"] { cursor: pointer; }
.vm-place-suggestions [role="option"]:hover,
.vm-place-suggestions [aria-selected="true"] { background: rgba(212, 175, 106, .14); color: #e8c687; }
.vm-place-suggestions small { display: block; color: #a79e8c; font-size: 12px; }
.vm-place-suggestions [role="status"] { color: #a79e8c; }
