/* ============================================================
   ★マスト★ 検索付きドロップダウン 共有スタイル
   searchable-dropdown skill / 全社内Webアプリ共通
   ------------------------------------------------------------
   プロジェクトのテーマ変数（--platinum-*, --champagne 等）があれば
   それを使い、無ければフォールバック色で表示される。
============================================================ */

.searchable-dropdown { position: relative; }

.searchable-dropdown .sd-list {
  position: absolute; left: 0; right: 0; top: 100%;
  background: #fff;
  border: 1px solid var(--platinum-300, #d8d6cf);
  border-top: none;
  border-radius: 0 0 8px 8px;
  max-height: 280px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1060;            /* モーダル内(1055)でも候補が隠れないように */
  display: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
}
.searchable-dropdown .sd-list.open { display: block; }

.searchable-dropdown .sd-item {
  padding: 7px 12px;
  cursor: pointer;
  font-size: .85rem;
  border-bottom: 1px solid var(--platinum-100, #f5f4f1);
}
.searchable-dropdown .sd-item:last-child { border-bottom: none; }
.searchable-dropdown .sd-item:hover,
.searchable-dropdown .sd-item.active { background: var(--platinum-100, #f5f4f1); }
.searchable-dropdown .sd-item.selected { background: var(--champagne-soft, #e8dcc1); }

.searchable-dropdown .sd-item .sd-main { font-weight: 500; }
.searchable-dropdown .sd-item .sub {
  font-size: .72rem;
  color: var(--platinum-600, #908d83);
  margin-top: 2px;
}
.searchable-dropdown .sd-item mark {
  background: var(--champagne-soft, #e8dcc1);
  color: inherit;
  padding: 0 1px;
  border-radius: 2px;
}

.searchable-dropdown .sd-empty {
  padding: 10px 12px;
  color: var(--platinum-600, #908d83);
  font-size: .82rem;
}

.searchable-dropdown .sd-clear {
  font-size: .72rem;
  color: var(--platinum-600, #908d83);
  text-decoration: none;
  margin-top: 4px;
  display: inline-block;
}
.searchable-dropdown .sd-clear:hover { color: var(--ink, #1c1c1c); }

/* 検索ヒント（プレースホルダの補足） */
.searchable-dropdown .sd-hint {
  font-size: .72rem;
  color: var(--platinum-600, #908d83);
  margin-top: 3px;
}

/* モバイル: 候補が画面外にはみ出さないよう高さを抑える */
@media (max-width: 576px) {
  .searchable-dropdown .sd-list { max-height: 45vh; }
}
