/* Typeable dropdown (cards/combo.js): styled to match .select, menu rendered on <body>. */
.combo { position: relative; min-width: 0; }
.combo .combo-input { padding-right: 28px; text-overflow: ellipsis; }
.combo-toggle { position: absolute; right: 1px; top: 1px; bottom: 1px; width: 26px; cursor: pointer; background:
  linear-gradient(45deg, transparent 50%, var(--ink-2) 50%) calc(50% - 2.5px) 50% / 5px 5px no-repeat,
  linear-gradient(135deg, var(--ink-2) 50%, transparent 50%) calc(50% + 2.5px) 50% / 5px 5px no-repeat; border: 0; }
.combo.open .combo-toggle { transform: rotate(180deg); }
.combo-menu { position: fixed; z-index: 200; max-height: 240px; max-width: 320px; overflow-y: auto; margin: 0; padding: 4px; list-style: none;
  background: var(--panel-bg, #f4efe2); color: var(--ink-0, #1c1a19); border: 1px solid var(--glass-border-hi, rgba(0, 0, 0, 0.3));
  border-radius: var(--radius-m, 4px); box-shadow: var(--shadow-2, 0 8px 24px rgba(0, 0, 0, 0.3)); font-size: 13px; }
.combo-menu li { padding: 6px 10px; border-radius: var(--radius-s, 2px); cursor: pointer; white-space: nowrap; }
.combo-menu li:hover, .combo-menu li.on { background: rgba(var(--brand-rgb, 193, 53, 44), 0.14); }
.combo-menu li.current { font-weight: 600; color: var(--brand, #c1352c); }
.combo-menu li.empty { cursor: default; color: var(--ink-2, #66605a); font-style: italic; }
