/* Shared Manufacturer / Caliber option menu (assets/option-menu.js).
   Used by the home page and the inventory page so both look the same. */
.om-list { display:block; position:relative; max-height:min(420px, 45vh); overflow-y:auto; overscroll-behavior:contain;
  padding-right:0.45rem; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:var(--gold, #b8963e) transparent; }
.om-list::-webkit-scrollbar { width:6px; }
.om-list::-webkit-scrollbar-track { background:transparent; }
.om-list::-webkit-scrollbar-thumb { background:var(--gold, #b8963e); border-radius:3px; }
.om-list::-webkit-scrollbar-thumb:hover { background:var(--gold-lt, #d4b25c); }
.om-sec { font-size:0.58rem; letter-spacing:0.24em; text-transform:uppercase; color:var(--silver, #9a958c); font-weight:600; margin:0.6rem 0 0.4rem; }
.om-sec:first-child { margin-top:0.1rem; }
.om-grid { display:grid; grid-template-columns:1fr 1fr; gap:0.4rem; }
.om-list .om-opt { display:flex; align-items:center; justify-content:space-between; gap:0.5rem; width:100%; min-width:0; min-height:40px; text-align:left;
  background:transparent; border:1px solid rgba(184,150,62,0.25); color:var(--light, #ddd8cc); padding:0.45rem 0.6rem;
  font-family:'Barlow',sans-serif; font-size:0.8rem; font-weight:400; line-height:1.2; letter-spacing:0; text-transform:none;
  text-decoration:none; cursor:pointer; transition:border-color 0.15s, color 0.15s, background 0.15s; box-sizing:border-box; }
.om-list .om-opt:hover, .om-list .om-opt:focus-visible { border-color:var(--gold, #b8963e); color:var(--gold, #b8963e); background:rgba(184,150,62,0.08); outline:none; }
.om-list .om-opt.on { background:var(--gold, #b8963e); border-color:var(--gold, #b8963e); color:var(--black, #0d0d0d); font-weight:600; }
.om-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.om-count { flex-shrink:0; font-size:0.68rem; font-weight:600; color:var(--gold, #b8963e); }
.om-list .om-opt.on .om-count { color:var(--black, #0d0d0d); }
.om-az { position:sticky; top:0; z-index:2; display:flex; flex-wrap:wrap; gap:0.25rem; padding:0.35rem 0 0.45rem; margin:0;
  background:#111; border-bottom:1px solid rgba(184,150,62,0.18); }
.om-az-btn { min-width:28px; height:28px; padding:0 0.3rem; background:transparent; border:1px solid rgba(184,150,62,0.25); color:var(--light, #ddd8cc);
  font-family:'Barlow',sans-serif; font-size:0.72rem; font-weight:600; cursor:pointer; }
.om-az-btn:hover, .om-az-btn:focus-visible { border-color:var(--gold, #b8963e); color:var(--gold, #b8963e); outline:none; }
.om-letter { font-family:'Bebas Neue',sans-serif; font-size:1.05rem; letter-spacing:0.08em; color:var(--gold, #b8963e);
  margin:0.55rem 0 0.3rem; padding-bottom:0.15rem; border-bottom:1px solid rgba(184,150,62,0.12); scroll-margin-top:var(--om-az-h, 44px); }
.om-empty { padding:0.8rem 0.4rem; font-size:0.82rem; color:var(--silver, #9a958c); }
@media (max-width:768px) {
  .om-list .om-opt { min-height:44px; font-size:0.84rem; }
  .om-az-btn { min-width:34px; height:34px; }
}
/* Wider panel on desktop so two columns of names fit */
@media (min-width:769px) { .fc-panel:has(> .om-list) { width:max(100%, 420px); } }
