/* ============================================================
   生产组门户（2026-09-18）：年/月「点选面板」选择器（共享组件 CSS）
   背景：iOS 原生 select 滚轮 + 页内滚轮控件在手机上易飞年（滚到 2012
   一下飞 2050 滚不回来），老大拍板改为纯点按零滚动的点选面板：
   - 年份：十年一页，可前后翻页，范围固定 2005 ~ 2035（页面选项更窄则收敛）；
   - 月份：12 个月一屏排开（「全年 / 全部月」等选项原样保留）；
   - 大按钮（触控目标 ≥48px），桌面鼠标同样可用。
   配套 year-month-picker.js：给 <select> 加 data-ym-picker="year|month" 即生效，
   原 select 保留在 DOM（隐藏）承载 name/value 提交，表单协议不变。
   视觉令牌沿用全站 style.css（纸底/碳墨线/墨绿主色）。
   ============================================================ */

/* 被接管的 select 隐藏（仍在表单里承载 name/value，提交协议不变） */
select.ymp-native-hidden { display: none !important; }

/* ---- 触发按钮（代替原 select 的可见控件） ---- */
.ymp-trigger {
  display: inline-flex; align-items: center; justify-content: space-between;
  gap: 10px; min-height: 48px; padding: 10px 14px;
  border: 2px solid var(--c-line, #1A1617);
  background: var(--c-white, #fff); color: var(--c-ink, #1A1617);
  font-family: var(--font-body); font-size: 1rem; line-height: 1.2;
  cursor: pointer; user-select: none; vertical-align: middle;
  font-variant-numeric: tabular-nums; max-width: 100%;
}
.ymp-trigger:hover { border-color: var(--c-primary, #076646); }
.ymp-trigger:focus-visible { outline: 2px solid var(--c-grad-c, #23A877); outline-offset: 2px; }
.ymp-trigger:disabled, .ymp-trigger.is-disabled { opacity: 0.38; pointer-events: none; }
.ymp-trigger .ymp-caret { font-size: 0.75rem; opacity: 0.55; flex: none; }
.ymp-trigger.ymp-fluid { width: 100%; }

/* ---- 弹层（fixed 居中，避开各页 sticky 表格容器 / overflow 裁剪） ---- */
.ymp-mask {
  position: fixed; inset: 0; z-index: 3000;
  background: rgba(26, 22, 23, 0.48);
  display: flex; align-items: center; justify-content: center;
  padding: 16px;
}
.ymp-mask[hidden] { display: none; }
.ymp-panel {
  width: 100%; max-width: 430px;
  /* 2026-09-19 审核 F2 修复：dvh 需 iOS 15.4+，旧 iOS 不认识会丢弃整条声明；
     先给 vh 兜底，再用 dvh 覆盖（支持 dvh 的浏览器取后者，层叠生效） */
  max-height: 84vh;
  max-height: min(84dvh, 640px);
  overflow: auto; overscroll-behavior: contain;
  background: var(--c-white, #fff);
  border: 2px solid var(--c-line, #1A1617);
  box-shadow: 8px 8px 0 rgba(26, 22, 23, 0.18);
}
.ymp-head {
  display: flex; align-items: center; gap: 6px;
  padding: 10px 12px; border-bottom: 2px solid var(--c-line, #1A1617);
  background: linear-gradient(90deg, var(--c-grad-a, #07583D), var(--c-grad-b, #08905F));
  color: var(--c-white, #fff);
  position: sticky; top: 0; z-index: 1;
}
.ymp-title {
  flex: 1; text-align: center; font-family: var(--font-macro);
  font-weight: 800; font-size: 1.05rem; letter-spacing: 0.04em;
  font-variant-numeric: tabular-nums;
}
.ymp-nav, .ymp-close {
  flex: none; width: 48px; height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: transparent; color: var(--c-white, #fff);
  font-size: 1.5rem; line-height: 1; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center;
}
.ymp-close { font-size: 1.3rem; }
.ymp-nav:hover, .ymp-close:hover { background: rgba(255, 255, 255, 0.18); }
.ymp-nav:disabled { opacity: 0.3; pointer-events: none; }
.ymp-nav:focus-visible, .ymp-close:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
/* 月份面板无翻页：隐藏箭头但保留占位，标题居中不歪 */
.ymp-head.ymp-no-nav .ymp-nav { visibility: hidden; pointer-events: none; }

.ymp-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px; padding: 16px;
}
@media (min-width: 480px) { .ymp-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ymp-cell {
  min-height: 52px; padding: 8px 4px;
  border: 1.5px solid var(--c-line-soft, rgba(26, 22, 23, 0.14));
  background: var(--c-bg, #FFFCE8); color: var(--c-ink, #1A1617);
  font-family: var(--font-body); font-size: 1.08rem; font-weight: 600;
  cursor: pointer; user-select: none;
  display: flex; align-items: center; justify-content: center;
  font-variant-numeric: tabular-nums;
}
.ymp-cell:hover { border-color: var(--c-primary, #076646); }
.ymp-cell:focus-visible { outline: 2px solid var(--c-grad-c, #23A877); outline-offset: 1px; }
.ymp-cell.is-sel {
  background: var(--c-primary, #076646); border-color: var(--c-primary, #076646);
  color: var(--c-white, #fff); font-weight: 800;
}
/* 空值特殊项（如跨年回购筛选的「起年 / 止年」= 不限）：整行按钮 */
.ymp-cell.ymp-special { grid-column: 1 / -1; font-size: 0.98rem; font-weight: 600; }
