/* assets/css/c-select.css
   站内共享自定义下拉（combobox / listbox）—— 卡 t_13dae45f（从 style.css 抽出，唯一一份）
   ================================================================================
   为什么单独一份文件：原生 <select> 的弹出列表由**系统渲染**，CSS 管不到背景/圆角/hover/字号，
   与站点割裂（老板 2026-10-03 反馈）。父卡 t_21e9f7ee 先在首页落地，本卡抽成共享件后四处共用：
     index.html · deepwork.html · settings.html · admin/index.html
   （引用页必须同时引 assets/js/c-select.js —— 无 JS 时这里的所有规则都不生效，页面回原生 select。）

   规格一律照站内既有视觉语言（**不引入新组件库、不新造视觉语言**）：
     · 收起态 .c-select-btn  与 .c-field select 同规格（字号 14px / 同内边距 / 同圆角）
     · 弹出层 .c-select-menu 与 .lang-menu 同规格（--card / --border / --radius-md / 同档阴影）
     · 选项   .c-select-opt  与 .lang-opt 同规格（13px / 8px 12px / --radius-sm / --accent-soft hover）
   本文件**不定义任何新设计变量**，只用 tokens.css 里既有 token（check_intent_dropdown.cjs 组 9 守）。

   启用开关只有 .is-enhanced 一个（由 JS 的能力检测决定：触屏/粗指针回落原生 select）——
   这里**不再写一份 @media 判据**：两处判据一旦不一致（如无头/嵌入式外壳把指针上报成 none），
   会出现「JS 认为该启用、CSS 却不显示按钮」的半残状态。
   各页的**尺寸胶水**（原 select 在本页的大小）写在各自的页 CSS 里，本文件只定组件自身的形制。 */
.c-select { position: relative; }
.c-select-btn {
  font: inherit; font-size: 14px; color: var(--fg); text-align: start;
  /* 行高显式给 16px：与 .c-field input/select 的内容框等高（40px 总高）。
     不能留 normal —— 中文 line box 用的是 CJK 字体度量（14px 字号 ≈ 20px 行高），
     会让按钮比相邻输入框高 4px（本仓 style.css 141 行处踩过同一个坑）。 */
  line-height: 16px;
  background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius-md);
  padding: 11px 14px; padding-inline-end: 36px; width: 100%;
  display: none; align-items: center; justify-content: space-between; gap: 8px; cursor: pointer;
  transition: border-color .15s, box-shadow .15s;
}
.c-select-btn:focus-visible { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.c-select-arrow { width: 12px; height: 12px; flex: none; stroke: var(--muted); }
.c-select-menu {
  position: absolute; top: calc(100% + 6px); inset-inline-start: 0; inset-inline-end: 0;
  background: var(--card); border: 1px solid var(--border); border-radius: var(--radius-md);
  padding: 6px; display: none; flex-direction: column; gap: 2px;
  box-shadow: 0 12px 32px rgba(0,0,0,.12); z-index: 50;
}
[data-theme="dark"] .c-select-menu { box-shadow: 0 12px 32px rgba(0,0,0,.55); }
.c-select-menu.open { display: flex; }
.c-select-opt {
  display: flex; align-items: center; gap: 8px; width: 100%; text-align: start;
  background: none; border: none; color: var(--fg); font-size: 13px;
  padding: 8px 12px; border-radius: var(--radius-sm); cursor: pointer;
}
.c-select-opt:hover, .c-select-opt:focus-visible { background: var(--accent-soft); outline: none; }
.c-select-opt[aria-selected="true"] { font-weight: 600; }
.c-select.is-enhanced > select {
  /* 视觉隐藏但对表单仍可见（clip 而非 display:none；tabindex=-1 不抢 Tab 焦点） */
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}
.c-select.is-enhanced > .c-select-btn { display: flex; }
