/* One listbox pattern for Materials, Purchases and their forms. */
.x-dropdown { min-width:0; }
.x-dropdown-trigger { width:100%; min-height:40px; justify-content:space-between; text-align:left; background:var(--surface); border:1px solid #e2e5ea; border-radius:7px; }
.x-dropdown-trigger span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.x-dropdown-trigger svg { width:14px; height:14px; flex-shrink:0; }
.x-dropdown-options, #category-options.x-dropdown-options { position:fixed; inset:auto; margin:0; z-index:100; width:auto; max-width:calc(100vw - 24px); max-height:220px; overflow-y:auto; overscroll-behavior:contain; padding:5px; border:1px solid var(--line); border-radius:8px; background:var(--surface); box-shadow:0 6px 20px #242b3812; scrollbar-color:#c8ccd5 transparent; scrollbar-width:thin; }
.x-dropdown-options [role=option] { display:flex; align-items:center; min-height:40px; padding:9px 12px; border-radius:5px; font-size:13px; line-height:1.45; color:var(--text); cursor:pointer; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.x-dropdown-options [role=option]:hover { background:#f3f4f6; }
.x-dropdown-options [aria-selected=true] { background:var(--soft); color:var(--selected-text); font-weight:550; }
.x-dropdown-options [aria-selected=true]::after { content:'✓'; margin-left:auto; padding-left:12px; }
.x-dropdown-options .keyboard-current { outline:1px solid var(--accent); outline-offset:-1px; }
.x-dropdown-trigger:focus-visible { outline-width:2px; outline-offset:2px; box-shadow:none; }
@media(max-width:900px){.x-dropdown-trigger {min-height:44px;font-size:14px;}.x-dropdown-options [role=option] {min-height:44px;font-size:14px;}}
