/* reference  id="v170-graduation-status-preference-polish" */

.field-menu.graduation-match-menu .graduation-match-summary{
  min-height: 56px !important;
  padding: 10px 14px !important;
  align-items: center !important;
}
.field-menu.graduation-match-menu .graduation-match-summary-copy{
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: block !important;
  line-height: 1.35 !important;
}
.preference-stack{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  width:100% !important;
}
.jobs-page .favorite-btn,
.jobs-page .interest-btn{
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  line-height:1 !important;
  box-shadow:none !important;
  cursor:pointer !important;
}
.jobs-page .favorite-btn{
  color:var(--gray-300) !important;
  font-size:13px !important;
}
.jobs-page .favorite-btn.active{
  color:var(--ink) !important;
}
.jobs-page .interest-btn{
  color:#b0aba0 !important;
  font-size:12px !important;
  font-weight:700 !important;
}
.jobs-page .interest-btn.active{
  color:#171717 !important;
}
.jobs-page .interest-btn:hover,
.jobs-page .interest-btn:focus,
.jobs-page .favorite-btn:hover,
.jobs-page .favorite-btn:focus{
  background:transparent !important;
  box-shadow:none !important;
}
.status-cell-stack{
  align-items:center !important;
  text-align:center !important;
  gap:3px !important;
}
.status-cell-stack .status-cell-trigger,
.status-cell-stack .status-selected-date{
  align-self:center !important;
  text-align:center !important;
}
.status-selected-date{
  display:block !important;
  width:auto !important;
}

/* reference  id="v218-graduation-custom-month-calendar" */

/* Native month popup is browser-controlled and cannot be recolored reliably.
   Replace only the popup mechanism; keep the field's existing visual geometry. */
.field-menu.graduation-match-menu .graduation-month-shell{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 36px !important;
  width:100% !important;
  height:34px !important;
  border:1px solid #171717 !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.field-menu.graduation-match-menu .graduation-month-display{
  width:100% !important;
  min-width:0 !important;
  height:32px !important;
  padding:5px 8px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:22px !important;
  box-shadow:none !important;
  cursor:text !important;
  caret-color:#171717 !important;
}
.field-menu.graduation-match-menu .graduation-month-display::placeholder{
  color:#6d675e !important;
  opacity:1 !important;
}
.field-menu.graduation-match-menu .graduation-month-shell:focus-within{
  box-shadow:inset 0 -2px 0 #f5d976 !important;
}
.field-menu.graduation-match-menu .graduation-month-trigger{
  position:relative !important;
  width:36px !important;
  height:32px !important;
  padding:0 !important;
  border:0 !important;
  border-left:1px solid #171717 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  cursor:pointer !important;
}
.field-menu.graduation-match-menu .graduation-month-trigger:hover,
.field-menu.graduation-match-menu .graduation-month-display:hover + .graduation-month-trigger{
  background:#fffaf0 !important;
}
.field-menu.graduation-match-menu .graduation-month-trigger::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:16px !important;
  height:16px !important;
  transform:translate(-50%,-50%) !important;
  background:currentColor !important;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 2h2v2h6V2h2v2h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM4 8h16V6H4v2Z"/></svg>') center/contain no-repeat !important;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 2h2v2h6V2h2v2h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM4 8h16V6H4v2Z"/></svg>') center/contain no-repeat !important;
}

.graduation-month-calendar{
  position:fixed !important;
  z-index:360 !important;
  width:300px !important;
  box-sizing:border-box !important;
  padding:12px !important;
  border:1px solid #bdb8ad !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:0 12px 28px rgba(0,0,0,.16) !important;
  color:#171717 !important;
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",Arial,sans-serif !important;
}
.graduation-month-calendar-head{
  display:grid !important;
  grid-template-columns:34px 1fr 34px !important;
  align-items:center !important;
  gap:6px !important;
  margin-bottom:10px !important;
}
.graduation-month-calendar-title{
  text-align:center !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.graduation-month-calendar-nav{
  width:34px !important;
  height:30px !important;
  border:1px solid #d3cec4 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:16px !important;
  cursor:pointer !important;
}
.graduation-month-calendar-nav:hover{ background:#f7f5ef !important; }
.graduation-month-calendar-grid{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:7px !important;
}
.graduation-month-calendar-cell{
  height:40px !important;
  padding:0 !important;
  border:1px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#171717 !important;
  font-size:12px !important;
  font-weight:400 !important;
  cursor:pointer !important;
}
.graduation-month-calendar-cell:hover{
  background:rgba(244,194,26,.14) !important;
}
.graduation-month-calendar-cell.selected{
  background:rgba(244,194,26,.24) !important;
  border-color:rgba(217,164,0,.55) !important;
  color:#171717 !important;
  font-weight:500 !important;
}
.graduation-month-calendar-foot{
  display:flex !important;
  justify-content:space-between !important;
  margin-top:10px !important;
  padding-top:9px !important;
  border-top:1px solid #ece8df !important;
}
.graduation-month-calendar-foot button{
  padding:4px 6px !important;
  border:0 !important;
  background:transparent !important;
  color:#4b4740 !important;
  font-size:11px !important;
  cursor:pointer !important;
}
.graduation-month-calendar-foot button:hover{
  color:#171717 !important;
  text-decoration:underline !important;
}

/* reference  id="v219-graduation-month-mask-input" */

.field-menu.graduation-match-menu .graduation-month-display.invalid-date-entry{
  box-shadow:inset 0 -2px 0 #d97c7c !important;
}
.field-menu.graduation-match-menu .graduation-month-display:focus{
  box-shadow:none !important;
}

/* reference  id="v220-smart-date-mask-style" */

.smart-date-mask.invalid-date-entry,
.graduation-month-display.invalid-date-entry{
  box-shadow:inset 0 -2px 0 #d97c7c !important;
}
.smart-date-mask:focus{
  box-shadow:none !important;
}

/* reference  id="v217-graduation-month-picker-soft-yellow" */

/* 毕业区间原生月份面板尽量往统一的浅黄体系靠拢。 */
.graduation-date-field input[type="month"] {
  accent-color: #ecd97a !important;
  color-scheme: light !important;
}

.graduation-date-field input[type="month"]::-webkit-calendar-picker-indicator {
  background-color: #f3e19a !important;
}

/* 新增时间输入框占位符改成与毕业时间一致的中文样式。 */
.graduation-date-input-shell .input::placeholder {
  color: #8b8477 !important;
  opacity: 1 !important;
}

/* reference  id="v167-graduation-status-personal-polish" */

.jobs-page .type-filter-bar{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(118px,1fr)) !important;
  gap:8px !important;
  width:max-content !important;
  max-width:100% !important;
}
.jobs-page .type-filter-option{width:100% !important;min-width:118px !important;text-align:center !important;}
.jobs-page.mobile-device-view .type-filter-bar{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}

.field-menu.graduation-match-menu{
  width:min(470px,calc(100vw - 24px)) !important;
  min-width:min(420px,calc(100vw - 24px)) !important;
  padding:16px 18px 18px !important;
  background:#fff !important;
  color:#171717 !important;
  border:1px solid #171717 !important;
}
.graduation-match-menu .field-menu-title{
  margin:0 0 12px !important;
  padding:0 0 12px !important;
  border-bottom:1px solid #d8d5ce !important;
  background:#fff !important;
}
.graduation-match-menu .graduation-match-copy{
  margin:0 0 14px !important;
  color:#66635d !important;
  font-size:12px !important;
  line-height:1.45 !important;
}
.graduation-inline-section{
  margin:0 !important;
  padding:13px 0 14px !important;
  border-top:1px solid #e2dfd8 !important;
  background:#fff !important;
}
.graduation-inline-section:first-of-type{border-top:0 !important;padding-top:4px !important;}
.graduation-inline-heading{
  width:100% !important;display:flex !important;align-items:center !important;gap:8px !important;
  margin:0 0 10px !important;padding:0 !important;border:0 !important;background:transparent !important;
  color:#171717 !important;font-size:13px !important;line-height:1.25 !important;font-weight:700 !important;text-align:left !important;
}
.graduation-inline-heading-static{cursor:default !important;}
.graduation-inline-radio{
  width:11px !important;height:11px !important;flex:0 0 11px !important;border:1px solid #171717 !important;border-radius:50% !important;background:#fff !important;
}
.graduation-inline-section.active .graduation-inline-radio{box-shadow:inset 0 0 0 3px #fff !important;background:#171717 !important;}
.graduation-match-menu .graduation-date-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;margin:0 !important;}
.graduation-match-menu .graduation-date-single{margin:0 !important;}
.graduation-match-menu .graduation-date-field{display:grid !important;gap:6px !important;min-width:0 !important;}
.graduation-match-menu .graduation-date-field>span{color:#171717 !important;font-size:11.5px !important;font-weight:400 !important;}
.graduation-match-menu .graduation-date-field input[type="month"]{
  width:100% !important;min-width:0 !important;height:34px !important;padding:5px 8px !important;border:1px solid #171717 !important;border-radius:0 !important;
  background:#fff !important;color:#171717 !important;font-size:12px !important;font-weight:400 !important;box-shadow:none !important;
}
.graduation-match-menu .graduation-date-field input[type="month"]:focus{outline:0 !important;box-shadow:inset 0 -3px 0 #c9c6be !important;}
.graduation-grade-options{display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:6px !important;}
.graduation-grade-option{
  position:relative !important;display:flex !important;align-items:center !important;justify-content:center !important;min-height:30px !important;padding:5px 6px !important;
  border:1px solid #bdb9b0 !important;background:#fff !important;color:#4f4c46 !important;font-size:11.5px !important;font-weight:400 !important;cursor:pointer !important;
}
.graduation-grade-option input{position:absolute !important;opacity:0 !important;pointer-events:none !important;}
.graduation-grade-option:hover{border-color:#171717 !important;color:#171717 !important;}
.graduation-grade-option.selected{border-color:#171717 !important;background:#171717 !important;color:#fff !important;}
.graduation-match-menu .graduation-match-summary{
  margin:12px 0 0 !important;padding:9px 10px !important;border:1px solid #d2cec5 !important;border-left:3px solid #171717 !important;
  background:#f7f6f2 !important;color:#4d4a44 !important;font-size:11.5px !important;line-height:1.4 !important;
}
@media(max-width:560px){
  .field-menu.graduation-match-menu{min-width:0 !important;width:calc(100vw - 20px) !important;}
  .graduation-match-menu .graduation-date-grid{grid-template-columns:1fr !important;}
  .graduation-grade-options{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}

.status-cell-stack{
  width:100% !important;min-height:28px !important;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:center !important;gap:2px !important;
}
.status-cell-trigger.status-cell-empty{
  width:auto !important;min-height:0 !important;color:#a8a398 !important;font-size:11px !important;font-weight:400 !important;line-height:1.3 !important;white-space:nowrap !important;
}
.status-selected-date{
  display:block !important;color:#a8a398 !important;font-size:9px !important;font-weight:400 !important;line-height:1.15 !important;white-space:nowrap !important;letter-spacing:0 !important;
}
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note]) .quiet-user-control::placeholder{
  color:#a8a398 !important;opacity:1 !important;font-size:11px !important;font-weight:400 !important;line-height:1.3 !important;
}

/* reference  id="v168-graduation-summary-polish" */

.field-menu.graduation-match-menu .graduation-match-copy {
  display:none !important;
}
.field-menu.graduation-match-menu .graduation-inline-heading {
  margin-bottom: 8px !important;
}
.field-menu.graduation-match-menu .graduation-match-summary {
  margin: 12px 0 0 !important;
  padding: 12px 14px !important;
  min-height: 70px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  border: 1px solid #171717 !important;
  border-left: 5px solid #DFA4B4 !important;
  background: #F4F0E2 !important;
  color: #2c2a26 !important;
  overflow: hidden !important;
}
.field-menu.graduation-match-menu .graduation-match-summary-copy {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: #2f2c28 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
}
.field-menu.graduation-match-menu .graduation-match-summary-pony {
  flex: 0 0 auto !important;
  width: 76px !important;
  height: auto !important;
  object-fit: contain !important;
  opacity: 0.92 !important;
  mix-blend-mode: multiply !important;
  transform: translateY(2px) !important;
}
@media (max-width: 560px) {
  .field-menu.graduation-match-menu .graduation-match-summary {
    padding: 10px 12px !important;
    min-height: 64px !important;
    gap: 8px !important;
  }
  .field-menu.graduation-match-menu .graduation-match-summary-pony {
    width: 58px !important;
  }
}

/* reference  id="v171-preference-and-graduation-final" */

/* 毕业提示：无论弹窗如何移动/缩放，只允许一行。 */
.field-menu.graduation-match-menu .graduation-match-summary{
  min-height:54px !important;
  padding:10px 12px !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  overflow:hidden !important;
}
.field-menu.graduation-match-menu .graduation-match-summary-copy{
  flex:1 1 auto !important;
  min-width:0 !important;
  width:0 !important;
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.2 !important;
  font-size:11px !important;
  font-weight:500 !important;
}
.field-menu.graduation-match-menu .graduation-match-summary-pony{
  flex:0 0 48px !important;
  width:48px !important;
  max-width:48px !important;
  height:auto !important;
}

/* 收藏 / 不感兴趣：扩大列宽与点击区域，避免误触。 */
.jobs-page .jobs-table .favorite-col,
.jobs-page .jobs-header-table .favorite-col{
  width:70px !important;
  min-width:70px !important;
  max-width:70px !important;
}
.preference-stack{
  width:100% !important;
  min-height:39px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
}
.jobs-page .preference-stack .favorite-btn,
.jobs-page .preference-stack .interest-btn{
  width:26px !important;
  height:16px !important;
  min-width:26px !important;
  min-height:16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.jobs-page .preference-stack .favorite-btn{
  font-size:17px !important;
  color:#aaa69d !important;
}
.jobs-page .preference-stack .favorite-btn.active{
  color:#171717 !important;
}
.jobs-page .preference-stack .interest-btn{
  font-size:15px !important;
  font-weight:700 !important;
  color:#aaa69d !important;
}
.jobs-page .preference-stack .interest-btn.active{
  color:#171717 !important;
}
.jobs-page .preference-stack .favorite-btn:hover,
.jobs-page .preference-stack .interest-btn:hover{
  background:#f0ede5 !important;
}

/* 表头仿 Position / 岗位类型：上收藏，下不感兴趣；两行各自可筛选。 */
.preference-header-col .th-inner{padding:0 !important;}
.preference-header{
  width:100% !important;
  min-height:38px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:stretch !important;
}
.preference-header-row{
  width:100% !important;
  min-height:18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  padding:1px 4px !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  cursor:pointer !important;
}
.preference-header-row + .preference-header-row{
  border-top:1px solid rgba(255,255,255,.12) !important;
}
.preference-header-label{
  white-space:nowrap !important;
  font-size:10.5px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
}
.preference-header-ignore .preference-header-label{
  color:#a7abc3 !important;
  font-size:9px !important;
  font-weight:500 !important;
}
.preference-header-icon{
  min-width:13px !important;
  font-size:12px !important;
  line-height:1 !important;
}
.preference-header-row.active{
  background:rgba(255,255,255,.10) !important;
}
.preference-header-row.active .preference-header-label,
.preference-header-row.active .preference-header-icon{
  color:#f4c21a !important;
}

/* 状态文字与日期沿同一中心轴。 */
.status-cell-stack{
  align-items:center !important;
  text-align:center !important;
}
.status-cell-stack .status-cell-trigger,
.status-cell-stack .status-selected-date{
  align-self:center !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* reference  id="v172-first-line-hint-and-filter-presets" */

/* 毕业提示只存在于标题后的第一行；底部 summary 永久隐藏。 */
.field-menu.graduation-match-menu .graduation-match-summary{
  display:none !important;
}
.field-menu.graduation-match-menu .graduation-first-line-hint{
  width:100% !important;
  height:42px !important;
  min-height:42px !important;
  margin:0 0 4px !important;
  padding:5px 8px 5px 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:6px !important;
  overflow:hidden !important;
  border:1px solid #171717 !important;
  border-left:5px solid #DFA4B4 !important;
  background:#F4F0E2 !important;
  box-sizing:border-box !important;
}
.field-menu.graduation-match-menu .graduation-first-line-hint > span{
  flex:1 1 auto !important;
  min-width:0 !important;
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-size:10.5px !important;
  line-height:1 !important;
  font-weight:500 !important;
  color:#2f2c28 !important;
}
/* Two-line graduation copy needs full glyph ascenders, not a clipped 1em line box. */
.field-menu.graduation-match-menu .graduation-requirements-hint{
  height:auto !important;
  padding-top:7px !important;
  padding-bottom:7px !important;
}
.field-menu.graduation-match-menu .graduation-requirements-hint > span{
  line-height:1.5 !important;
}
.field-menu.graduation-match-menu .graduation-first-line-hint.graduation-requirements-hint > img{
  flex-basis:40px !important;
  width:40px !important;
  height:31px !important;
}
.field-menu.graduation-match-menu .graduation-first-line-hint > img{
  flex:0 0 34px !important;
  width:34px !important;
  height:26px !important;
  object-fit:contain !important;
  opacity:.92 !important;
  mix-blend-mode:multiply !important;
}

/* 筛选 + 保存方案：紧邻但视觉独立。 */
.filter-state-and-presets{
  position:relative !important;
  display:flex !important;
  align-items:stretch !important;
  gap:6px !important;
}
.filter-preset-split{
  position:relative !important;
  display:grid !important;
  grid-template-rows:1fr 1fr !important;
  width:78px !important;
  min-width:78px !important;
  height:34px !important;
  border:1px solid #171717 !important;
  background:#fff !important;
}
.filter-preset-half{
  width:100% !important;
  min-height:0 !important;
  padding:0 5px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:9.5px !important;
  line-height:1 !important;
  font-weight:500 !important;
  text-align:center !important;
  cursor:pointer !important;
}
.filter-preset-half + .filter-preset-half{
  border-top:1px solid #d5d1c8 !important;
}
.filter-preset-half:hover:not(:disabled),
.filter-preset-half.active{
  background:#f4f1e9 !important;
}
.filter-preset-half:disabled{
  color:#b8b3aa !important;
  cursor:default !important;
}
.saved-filter-preset-menu{
  position:absolute !important;
  z-index:180 !important;
  top:38px !important;
  left:0 !important;
  width:210px !important;
  max-height:280px !important;
  overflow:auto !important;
  padding:7px !important;
  border:1px solid #171717 !important;
  background:#fff !important;
  box-shadow:4px 4px 0 rgba(0,0,0,.12) !important;
}
.saved-filter-preset-title{
  padding:3px 5px 7px !important;
  color:#171717 !important;
  font-size:11px !important;
  font-weight:700 !important;
  border-bottom:1px solid #ddd8ce !important;
}
.saved-filter-preset-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 24px !important;
  align-items:center !important;
  border-bottom:1px solid #eeeae2 !important;
}
.saved-filter-preset-row:last-child{
  border-bottom:0 !important;
}
.saved-filter-preset-apply,
.saved-filter-preset-delete{
  border:0 !important;
  background:transparent !important;
  color:#171717 !important;
  cursor:pointer !important;
}
.saved-filter-preset-apply{
  min-width:0 !important;
  padding:8px 6px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  text-align:left !important;
  font-size:11px !important;
  font-weight:500 !important;
}
.saved-filter-preset-delete{
  width:24px !important;
  height:28px !important;
  color:#9a958b !important;
  font-size:15px !important;
}
.saved-filter-preset-apply:hover,
.saved-filter-preset-delete:hover{
  background:#f4f1e9 !important;
}
.saved-filter-preset-empty{
  padding:12px 6px !important;
  color:#aaa59b !important;
  font-size:10.5px !important;
  text-align:center !important;
}

/* reference  id="v173-debug-polish" */

/* 1. 毕业区间：提示卡改成非常浅的粉色，不再有旧式米黄底。 */
.field-menu.graduation-match-menu .graduation-first-line-hint{
  background:#FFF6F8 !important;
  border-color:#171717 !important;
  border-left-color:#DFA4B4 !important;
}

/* 2. DEBUG：旧规则 .status-cell-trigger { font:inherit; min-height:24px; ... }
   确实会把空状态提示拉回普通按钮感。这里用更高 specificity 完整覆盖。
   空状态的视觉直接对齐 Position 下方 .position-subtype。 */
.jobs-page .jobs-table .status-cell-stack .status-cell-trigger.status-cell-empty{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#a8a398 !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:400 !important;
  font-style:normal !important;
  line-height:1.3 !important;
  letter-spacing:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  opacity:1 !important;
}
.jobs-page .jobs-table .quiet-user-control[data-expandable-note]::placeholder{
  color:#a8a398 !important;
  opacity:1 !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:400 !important;
  font-style:normal !important;
  line-height:1.3 !important;
  letter-spacing:0 !important;
}

/* 3. 不感兴趣：先有选中反馈，再柔和退出。 */
.jobs-page .jobs-table tr[data-job-row] td{
  transition:
    opacity .36s ease,
    transform .42s cubic-bezier(.22,.75,.22,1),
    background-color .18s ease !important;
}
.jobs-page .jobs-table tr.jd-interest-selected td{
  background:#fff1f5 !important;
}
.jobs-page .jobs-table tr.jd-interest-selected .interest-btn{
  color:#171717 !important;
  transform:scale(1.14) !important;
}
.jobs-page .jobs-table tr.jd-interest-release-confirm td{
  background:#f3f1eb !important;
}
.jobs-page .jobs-table tr.jd-interest-exit td{
  opacity:0 !important;
  transform:translateX(-12px) !important;
}
@media (prefers-reduced-motion: reduce){
  .jobs-page .jobs-table tr[data-job-row] td{
    transition:none !important;
  }
}

/* 4. “保存当前筛选方案 / 我的筛选方案”字更长，扩大分按钮宽度。 */
.filter-preset-split{
  width:118px !important;
  min-width:118px !important;
}
.filter-preset-half{
  padding:0 6px !important;
  font-size:9.5px !important;
  white-space:nowrap !important;
}
.saved-filter-preset-menu{
  width:230px !important;
}

/* reference  id="v174-polish-fixes" */

/* 状态 / 备注空提示：与 Position 下灰字保持同类感，不再像按钮。 */
.jobs-page .jobs-table .status-cell-stack{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:2px !important;
}
.jobs-page .jobs-table .status-cell-stack .status-cell-trigger.status-cell-empty{
  color:#a8a398 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  text-align:center !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note]) .quiet-user-control{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  min-height:0 !important;
}
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note]) .quiet-user-control::placeholder{
  color:#a8a398 !important;
  opacity:1 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
}

/* 不感兴趣：去掉一块粉一块黄的底色变化，只保留按钮确认 + 柔和退场。 */
.jobs-page .jobs-table tr[data-job-row] td{
  transition:
    opacity .32s ease,
    transform .38s cubic-bezier(.22,.75,.22,1) !important;
}
.jobs-page .jobs-table tr.jd-interest-selected td,
.jobs-page .jobs-table tr.jd-interest-release-confirm td{
  background:inherit !important;
}
.jobs-page .jobs-table tr.jd-interest-selected .interest-btn,
.jobs-page .jobs-table tr.jd-interest-release-confirm .interest-btn{
  color:#171717 !important;
  transform:scale(1.18) !important;
}
.jobs-page .jobs-table tr.jd-interest-selected td{
  opacity:.78 !important;
}
.jobs-page .jobs-table tr.jd-interest-exit td{
  opacity:0 !important;
  transform:translateX(-10px) !important;
}
@media (prefers-reduced-motion: reduce){
  .jobs-page .jobs-table tr[data-job-row] td{
    transition:none !important;
  }
}

/* 保存筛选方案弹窗：按当前站点的黑白黄调性做，不再是系统原生对话框。 */
.filter-preset-save-backdrop{
  background:rgba(0,0,0,.38) !important;
}
.filter-preset-save-modal{
  position:relative;
  width:min(540px, calc(100vw - 28px));
  padding:28px 28px 24px;
  background:#fffdf9;
  border:2px solid #171717;
  box-shadow:0 18px 40px rgba(0,0,0,.18);
}
.filter-preset-save-close{
  position:absolute;
  top:10px;
  right:12px;
  border:0;
  background:transparent;
  color:#7d786d;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}
.filter-preset-save-eyebrow{
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  color:#8a846f;
  margin-bottom:8px;
}
.filter-preset-save-title{
  margin:0;
  font-size:24px;
  line-height:1.15;
  color:#171717;
}
.filter-preset-save-copy{
  margin:10px 0 18px;
  font-size:13px;
  line-height:1.55;
  color:#6d685d;
}
.filter-preset-save-field{
  display:block;
}
.filter-preset-save-field > span{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  font-weight:600;
  color:#171717;
}
.filter-preset-save-input{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1.5px solid #171717;
  background:#fff;
  color:#171717;
  font:500 15px/1.3 "Inter","PingFang SC","Microsoft YaHei",sans-serif;
  outline:none;
}
.filter-preset-save-input:focus{
  box-shadow:0 0 0 2px rgba(244,194,26,.25);
}
.filter-preset-save-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:18px;
}
.filter-preset-save-cancel.btn{
  min-width:96px;
  border-color:#cfd5e0 !important;
  color:#1c2944 !important;
  background:#fff !important;
}
.filter-preset-save-confirm.btn{
  min-width:96px;
  background:#16223f !important;
  border-color:#16223f !important;
  color:#fff !important;
}
.filter-preset-save-confirm.btn:hover,
.filter-preset-save-confirm.btn:focus-visible{
  background:#0f1830 !important;
  border-color:#0f1830 !important;
}

/* 分按钮字更长时保持整洁。 */
.filter-preset-split{
  width:118px !important;
  min-width:118px !important;
}
.filter-preset-half{
  padding:0 6px !important;
  font-size:9.5px !important;
  white-space:nowrap !important;
}
.saved-filter-preset-menu{
  width:230px !important;
}

/* reference  id="v175-first-row-personal-hint-debug-fix" */

/*
  V175 authoritative rule:
  提示文本由 JS 只注入当前第一条可见 JD。
  CSS 不再尝试“制造”提示，避免旧规则互相覆盖。
*/
.jobs-page .jobs-table .status-cell-trigger.status-cell-empty:empty{
  min-width:18px !important;
  min-height:14px !important;
}
.jobs-page .jobs-table .status-cell-trigger.status-cell-empty:not(:empty){
  color:#a8a398 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  white-space:nowrap !important;
}
.jobs-page .jobs-table .quiet-user-control[data-expandable-note="1"]::placeholder{
  color:#a8a398 !important;
  opacity:1 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
}

/* reference  id="v176-visible-first-row-and-save-modal-fix" */

/* 当前视图第一行提示：文案规格 */
.jobs-page .jobs-table .status-cell-trigger.status-cell-empty:not(:empty){
  color:#a8a398 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  text-align:center !important;
  white-space:nowrap !important;
}
.jobs-page .jobs-table .quiet-user-control[data-expandable-note="1"]::placeholder{
  color:#a8a398 !important;
  opacity:1 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
}

/* 保存筛选方案：确认/取消都坚持方形按钮，覆盖全局 btn 圆角。 */
.filter-preset-save-modal .filter-preset-save-actions .btn,
.filter-preset-save-modal .filter-preset-save-confirm,
.filter-preset-save-modal .filter-preset-save-cancel{
  border-radius:0 !important;
}
.filter-preset-save-modal .filter-preset-save-confirm{
  background:#182133 !important;
  color:#fff !important;
  border:1px solid #182133 !important;
  box-shadow:none !important;
}
.filter-preset-save-modal .filter-preset-save-cancel{
  background:#fff !important;
  color:#162033 !important;
  border:1px solid #D6DBE4 !important;
  box-shadow:none !important;
}

/* reference  id="v177-scroll-hint-and-saved-presets-fix" */

/* 当前视图顶部提示语必须清楚可见。 */
.jobs-page .jobs-table .status-cell-trigger.status-cell-empty:not(:empty){
  color:#a8a398 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
  white-space:nowrap !important;
}
.jobs-page .jobs-table .quiet-user-control[data-expandable-note="1"]::placeholder{
  color:#a8a398 !important;
  opacity:1 !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1.3 !important;
}

/* 我的筛选方案：保证弹层在 sticky header / 表格上方，不被裁掉。 */
.jobs-page .tracker-controls{
  overflow:visible !important;
}
.jobs-page .tracker-controls:has(.saved-filter-preset-menu){
  z-index:260 !important;
}
.filter-state-and-presets,
.filter-preset-split{
  overflow:visible !important;
}
.saved-filter-preset-menu{
  z-index:9999 !important;
  top:38px !important;
  left:0 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  background:#fff !important;
}
.saved-filter-preset-title{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
.saved-filter-preset-title > span{
  color:#9a958b !important;
  font-size:10px !important;
  font-weight:500 !important;
}

/* reference  id="v178-first-visible-row-overlay" */

/*
  V178: 提示语不再写进 row 本身，而是用一个跟随当前视图第一行的 overlay。
  这样无论滚到哪里，第一条可见 JD 的空状态/备注位置都能稳定显示提示。
*/
.personal-first-row-hint{
  position:fixed !important;
  z-index:33 !important; /* below sticky table header (34), above body cells */
  pointer-events:none !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  color:#a8a398 !important;
  font-family:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif !important;
  font-weight:400 !important;
  line-height:1 !important;
  background:transparent !important;
}
.personal-first-row-hint-status{
  padding:0 2px !important;
  font-size:9px !important;
  letter-spacing:-.25px !important;
  white-space:nowrap !important;
  text-overflow:clip !important;
}
.personal-first-row-hint-note{
  justify-content:flex-start !important;
  padding:0 5px !important;
  font-size:11px !important;
  white-space:nowrap !important;
}

/* reference  id="v179-scroll-stop-and-active-preset" */

/* 滚动中不显示提示；停下后 JS 再放到当前第一行。 */
.personal-first-row-hint{
  transition:opacity .12s ease !important;
}

/* 保存方案区 */
.filter-preset-wrap{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  position:relative !important;
}
.active-filter-preset-badge{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  max-width:180px !important;
  min-height:32px !important;
  padding:4px 8px !important;
  border:1px solid #171717 !important;
  background:#fffdf9 !important;
  color:#171717 !important;
  overflow:hidden !important;
}
.active-filter-preset-badge > span{
  flex:0 0 auto !important;
  color:#8f897f !important;
  font-size:9px !important;
  font-weight:500 !important;
  white-space:nowrap !important;
}
.active-filter-preset-badge > strong{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:10.5px !important;
  font-weight:700 !important;
}
.saved-filter-preset-row.active{
  background:#fff6d2 !important;
}
.saved-filter-preset-row.active .saved-filter-preset-apply{
  font-weight:700 !important;
}

/* reference  id="v182-position-job-type-style" */

/* Position 表头下拉：视觉语言与“岗位类型”筛选统一，但保留两级逻辑。 */
.position-filter-job-type-style{
  width:min(760px, calc(100vw - 24px)) !important;
  min-width:min(680px, calc(100vw - 24px)) !important;
  padding-bottom:12px !important;
  overflow-x:hidden !important;
}

.position-filter-job-type-style .hierarchy-top-actions{
  margin-bottom:0 !important;
}

.position-filter-job-type-style .position-filter-heading{
  display:block !important;
  padding-right:0 !important;
  margin-top:0 !important;
}

.position-filter-job-type-style .field-menu-title{
  padding-bottom:8px !important;
}

.position-filter-job-type-style .hierarchy-filter-search{
  margin-bottom:10px !important;
}

.position-filter-job-type-style .region-filter-layout{
  display:grid !important;
  grid-template-columns:minmax(260px,.9fr) minmax(340px,1.1fr) !important;
  height:clamp(240px,38vh,360px) !important;
  border-top:1px solid #e4e7ec !important;
  border-bottom:1px solid #e4e7ec !important;
  background:#fff !important;
}

.position-filter-job-type-style .region-filter-countries,
.position-filter-job-type-style .region-filter-regions{
  padding:10px 12px !important;
  background:#fff !important;
}

.position-filter-job-type-style .position-filter-positions{
  border-left:1px solid #e4e7ec !important;
}

.position-filter-job-type-style .region-filter-section-title{
  color:#667085 !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.01em !important;
  margin-bottom:5px !important;
}

.position-filter-job-type-style .region-country-row,
.position-filter-job-type-style .filter-option{
  min-height:32px !important;
}

.position-filter-job-type-style .region-country-row.active{
  background:#fffaf0 !important;
}

.position-filter-job-type-style .region-country-row.active::before{
  background:#f4c21a !important;
}

/* 与岗位类型筛选一致：方形 checkbox + 浅黄选中态。 */
.position-filter-job-type-style input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
  margin:0 !important;
  border:1px solid #222 !important;
  border-radius:0 !important;
  background:#fff !important;
  display:inline-grid !important;
  place-content:center !important;
  cursor:pointer !important;
}
.position-filter-job-type-style input[type="checkbox"]::after{
  content:"" !important;
  width:5px !important;
  height:3px !important;
  border-left:1.45px solid #111 !important;
  border-bottom:1.45px solid #111 !important;
  transform:rotate(-45deg) translate(0,-1px) !important;
  opacity:0 !important;
}
.position-filter-job-type-style input[type="checkbox"]:checked,
.position-filter-job-type-style input[type="checkbox"]:indeterminate{
  background:#fff3b0 !important;
  border-color:#111 !important;
}
.position-filter-job-type-style input[type="checkbox"]:checked::after{
  opacity:1 !important;
}
.position-filter-job-type-style input[type="checkbox"]:indeterminate::after{
  width:6px !important;
  height:0 !important;
  border:0 !important;
  border-top:1.45px solid #111 !important;
  transform:none !important;
  opacity:1 !important;
}

/* 顶部操作按钮也统一为岗位类型的方形按钮。 */
.position-filter-job-type-style button,
.position-filter-job-type-style .btn,
.position-filter-job-type-style .mini-btn{
  border-radius:0 !important;
}

/* reference  id="v183-position-selected-summary" */

.position-filter-job-type-style .position-selected-summary{
  margin-top:0 !important;
  border-top:1px solid #e4e7ec !important;
  background:#fff !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-summary-bar{
  min-height:42px !important;
  background:#f6f8fb !important;
  border:0 !important;
  border-radius:0 !important;
  padding:8px 14px !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-summary-title{
  font-size:11px !important;
  font-weight:700 !important;
  color:#344054 !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-count{
  min-width:23px !important;
  height:23px !important;
  padding:0 5px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #171717 !important;
  background:#fff6bf !important;
  color:#171717 !important;
  font-size:11px !important;
  font-weight:600 !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-summary-hint,
.position-filter-job-type-style .position-selected-summary .job-type-selected-summary-action{
  color:#7b8496 !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-panel{
  background:#fff !important;
}
.position-filter-job-type-style .position-selected-summary .job-type-selected-empty{
  padding:12px 14px !important;
  color:#a0a7b4 !important;
  font-size:11px !important;
}

/* reference  id="v184-status-note-alignment" */

/*
  状态 chip 与备注正文对齐：
  日期不再参与 status stack 的垂直居中计算，否则有日期时会把 Offer 顶上去。
*/
.jobs-page .jobs-table td:has(.status-cell-stack),
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note="1"]){
  vertical-align:middle !important;
}

.jobs-page .jobs-table .status-cell-stack{
  position:relative !important;
  width:100% !important;
  min-height:30px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 0 10px !important;
  box-sizing:border-box !important;
}

.jobs-page .jobs-table .status-cell-stack .status-cell-trigger{
  position:relative !important;
  top:5px !important;
  margin:0 auto !important;
  align-self:center !important;
}

.jobs-page .jobs-table .status-cell-stack .status-selected-date{
  position:absolute !important;
  left:50% !important;
  bottom:0 !important;
  transform:translateX(-50%) !important;
  margin:0 !important;
  width:max-content !important;
  text-align:center !important;
  line-height:1 !important;
}

/* 备注输入本身沿同一条水平中心线。 */
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note="1"]) .quiet-user-control{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  line-height:15px !important;
  min-height:15px !important;
  height:15px !important;
}

/* reference  id="v185-status-note-alignment-fix" */

/*
  修正 V184：
  不再用 absolute 放日期，避免 Offer 与日期重叠。
  状态区恢复正常文档流，用两行布局；整体只轻微下移，
  让 Offer 的视觉中心更接近备注文字。
*/
.jobs-page .jobs-table .status-cell-stack{
  position:static !important;
  width:100% !important;
  min-height:32px !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  box-sizing:border-box !important;
  transform:translateY(3px) !important;
}

.jobs-page .jobs-table .status-cell-stack .status-cell-trigger{
  position:static !important;
  top:auto !important;
  margin:0 auto !important;
  align-self:center !important;
  flex:0 0 auto !important;
}

.jobs-page .jobs-table .status-cell-stack .status-selected-date{
  position:static !important;
  left:auto !important;
  bottom:auto !important;
  transform:none !important;
  margin:0 !important;
  width:auto !important;
  flex:0 0 auto !important;
  line-height:11px !important;
  min-height:11px !important;
  text-align:center !important;
  white-space:nowrap !important;
}

/* 备注保持单行，不额外上下偏移。 */
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note="1"]){
  vertical-align:middle !important;
}
.jobs-page .jobs-table td:has(.quiet-user-control[data-expandable-note="1"]) .quiet-user-control{
  display:block !important;
  width:100% !important;
  height:15px !important;
  min-height:15px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:15px !important;
}

/* reference  id="v186-horizontal-preference-column" */

/* 第一列：收藏 / 不感兴趣由上下排列改为左右排列。 */
.jobs-page .jobs-table .favorite-col,
.jobs-page .jobs-header-table .favorite-col{
  width:84px !important;
  min-width:84px !important;
  max-width:84px !important;
}

.preference-stack{
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  min-height:34px !important;
}

.jobs-page .preference-stack .favorite-btn,
.jobs-page .preference-stack .interest-btn{
  width:28px !important;
  height:24px !important;
  min-width:28px !important;
  min-height:24px !important;
}

/* 表头同步改成左右排列，和内容方向一致。 */
.preference-header{
  flex-direction:row !important;
  align-items:stretch !important;
  justify-content:center !important;
  min-height:38px !important;
}

.preference-header-row{
  flex:1 1 50% !important;
  min-width:0 !important;
  min-height:38px !important;
  padding:3px 4px !important;
  flex-direction:column !important;
  gap:3px !important;
}

.preference-header-row + .preference-header-row{
  border-top:0 !important;
  border-left:1px solid rgba(255,255,255,.14) !important;
}

.preference-header-label{
  font-size:9px !important;
  white-space:nowrap !important;
}

.preference-header-icon{
  font-size:12px !important;
}

/* reference  id="v187-preference-order-and-visual-match" */

/* 第一列：不感兴趣在左，收藏在右。 */
.preference-stack{
  flex-direction:row !important;
  gap:12px !important;
}

/* 两个正文图标统一视觉重量、尺寸与默认色。 */
.jobs-page .preference-stack .favorite-btn,
.jobs-page .preference-stack .interest-btn{
  width:28px !important;
  height:24px !important;
  min-width:28px !important;
  min-height:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#9EA3AD !important;
  font-family:"Arial","Inter","Noto Sans Symbols 2","Noto Sans SC",sans-serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  transform:none !important;
  text-shadow:none !important;
  -webkit-text-stroke:0 !important;
}
.jobs-page .preference-stack .favorite-btn.active,
.jobs-page .preference-stack .interest-btn.active{
  color:#171717 !important;
  font-weight:400 !important;
}

/* 表头按 Position 列层级：主文字白色，下面示例符号浅灰。 */
.preference-header{
  flex-direction:row !important;
  align-items:stretch !important;
  min-height:38px !important;
}
.preference-header-row{
  flex:1 1 50% !important;
  min-width:0 !important;
  min-height:38px !important;
  padding:4px 3px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  background:transparent !important;
  border:0 !important;
}
.preference-header-row + .preference-header-row{
  border-left:1px solid rgba(255,255,255,.12) !important;
}
.preference-header-label{
  color:#fff !important;
  font-size:10px !important;
  font-weight:600 !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
}
.preference-header-icon{
  color:#A7ADC0 !important;
  font-family:"Arial","Inter","Noto Sans Symbols 2","Noto Sans SC",sans-serif !important;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.preference-header-row.active{
  background:transparent !important;
}
.preference-header-row.active .preference-header-label{
  color:#fff !important;
}
.preference-header-row.active .preference-header-icon{
  color:#F4C21A !important;
}

/* 横排第一列宽度稳定。 */
.jobs-page .jobs-table .favorite-col,
.jobs-page .jobs-header-table .favorite-col{
  width:84px !important;
  min-width:84px !important;
  max-width:84px !important;
}

/* reference  id="v188-unified-preference-icons-and-header" */

/* 正文两个符号共用同一个 SVG box/stroke/color system。 */
.jobs-page .preference-stack .favorite-btn,
.jobs-page .preference-stack .interest-btn{
  color:#9EA3AD !important;
}
.jobs-page .preference-stack .favorite-btn.active,
.jobs-page .preference-stack .interest-btn.active{
  color:#171717 !important;
}
.preference-icon-svg{
  display:block !important;
  width:16px !important;
  height:16px !important;
  overflow:visible !important;
}

/* 表头：直接沿用 Position 的 header-label / header-label-sub 规格。 */
.preference-header.th-inner{
  padding:0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:stretch !important;
  justify-content:center !important;
}
.preference-header-row{
  flex:1 1 50% !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}
.preference-header-row + .preference-header-row{
  border-left:1px solid rgba(255,255,255,.12) !important;
}
.preference-header-row .th-line{
  width:100% !important;
  min-height:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
}
.preference-header-row .header-label{
  display:block !important;
  width:100% !important;
  text-align:center !important;
  white-space:nowrap !important;
}
.preference-header-row .preference-header-icon{
  color:#A7ADC0 !important;
}
.preference-header-svg{
  display:block !important;
  width:12px !important;
  height:12px !important;
  margin:0 auto !important;
}
.preference-header-row.active .preference-header-icon{
  color:#F4C21A !important;
}

/* reference  id="v189-preference-and-ddl-filter" */

/* 第一列：左右半区都是完整点击区。
   左 = 不感兴趣；右 = 收藏。收藏无需精准点到星星。 */
.preference-stack{
  width:100% !important;
  height:100% !important;
  min-height:34px !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:stretch !important;
  justify-content:stretch !important;
  gap:0 !important;
  padding:0 !important;
}
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  flex:1 1 50% !important;
  width:50% !important;
  min-width:0 !important;
  height:100% !important;
  min-height:34px !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.jobs-page .preference-stack .interest-btn{
  border-right:1px solid rgba(0,0,0,.04) !important;
}
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(0,0,0,.025) !important;
}

/* 表头：对于 84px 列宽，文字缩小、变细，减少拥挤感。 */
.preference-header-row .header-label{
  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:1.05 !important;
  letter-spacing:-.1px !important;
}
.preference-header-row .header-label.header-label-sub{
  font-size:8px !important;
  font-weight:400 !important;
}
.preference-header-svg{
  width:11px !important;
  height:11px !important;
}

/* DDL：新增“隐藏已关闭岗位”功能，和现有筛选菜单保持方形/轻量风格。 */
.ddl-closed-filter-section{
  padding:8px 0 !important;
  border-bottom:1px solid #ece8df !important;
}
.ddl-hide-closed-toggle{
  width:100% !important;
  min-height:32px !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:5px 8px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:11px !important;
  font-weight:500 !important;
  text-align:left !important;
  cursor:pointer !important;
}
.ddl-hide-closed-toggle:hover{
  background:#f7f4ed !important;
}
.ddl-hide-closed-box{
  width:14px !important;
  height:14px !important;
  flex:0 0 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #171717 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:10px !important;
  line-height:1 !important;
}
.ddl-hide-closed-toggle.active .ddl-hide-closed-box{
  background:#fff3b0 !important;
}

/* reference  id="v190-preference-hover-polish" */

/* 去掉不感兴趣 / 收藏之间的细分隔线 */
.jobs-page .preference-stack .interest-btn{
  border-right:0 !important;
}

/* 第一列 hover：整块点击区有轻微反馈，但不抢正文 hover。 */
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  transition:background-color .12s ease, color .12s ease, transform .12s ease !important;
}
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(0,0,0,.045) !important;
}
.jobs-page .preference-stack .interest-btn:hover .preference-icon-svg,
.jobs-page .preference-stack .favorite-btn:hover .preference-icon-svg{
  transform:scale(1.06) !important;
}

/* 表头两半区也有 hover，保持同一交互语言。 */
.preference-header-row{
  transition:background-color .12s ease !important;
}
.preference-header-row:hover{
  background:rgba(255,255,255,.06) !important;
}

/* reference  id="v191-preference-header-hover-and-ddl-direct-toggle" */

/* 第一列表头：彻底移除左右中线，包括所有历史规则。 */
.preference-header,
.preference-header-row,
.preference-header-row + .preference-header-row,
.preference-header-ignore,
.preference-header-favorite{
  border-left:0 !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
}

/* 用严格 2 列网格，让表头文字/符号与正文左右点击区中心完全一致。 */
.preference-header.th-inner{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:stretch !important;
  justify-items:stretch !important;
  width:100% !important;
  padding:0 !important;
}
.preference-header-row{
  width:100% !important;
  min-width:0 !important;
  padding:3px 1px !important;
  margin:0 !important;
  display:grid !important;
  grid-template-rows:1fr 1fr !important;
  align-items:center !important;
  justify-items:center !important;
  gap:0 !important;
  background:transparent !important;
}
.preference-header-row .th-line{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
}
.preference-header-row .header-label{
  width:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
  color:#fff !important;
  font-size:7.6px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.35px !important;
  white-space:nowrap !important;
}
.preference-header-row .header-label.header-label-sub{
  color:#A7ADC0 !important;
}
.preference-header-svg{
  width:10.5px !important;
  height:10.5px !important;
  margin:0 auto !important;
}

/* Hover 要明显：整个左右点击区出现浅灰层，图标同步变深并轻微放大。 */
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  transition:background-color .12s ease, color .12s ease !important;
}
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(23,23,23,.10) !important;
  color:#171717 !important;
}
.jobs-page .preference-stack .interest-btn:hover .preference-icon-svg,
.jobs-page .preference-stack .favorite-btn:hover .preference-icon-svg{
  transform:scale(1.12) !important;
}
.preference-header-row:hover{
  background:rgba(255,255,255,.10) !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}

/* DDL 没有下拉：直接在表头提供“隐藏已关闭”开关。 */
.jobs-page .jobs-table th.homepage-ddl-col .th-inner,
.jobs-page .jobs-table th:has(.ddl-hide-closed-header-toggle) .th-inner{
  padding-bottom:13px !important;
}
.ddl-hide-closed-header-toggle{
  position:absolute !important;
  left:50% !important;
  bottom:2px !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:calc(100% - 8px) !important;
  height:11px !important;
  padding:0 3px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#A7ADC0 !important;
  font-size:8px !important;
  font-weight:400 !important;
  line-height:11px !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.ddl-hide-closed-header-toggle:hover{
  background:rgba(255,255,255,.10) !important;
  color:#fff !important;
}
.ddl-hide-closed-header-toggle.active{
  color:#F4C21A !important;
  font-weight:600 !important;
}

/* reference  id="v192-first-column-and-ddl-rebuild" */

/* ===== 第一列：真正对齐，不再靠 CSS 假装加宽 ===== */
.jobs-page .jobs-table .favorite-col,
.jobs-page .jobs-header-table .favorite-col{
  width:104px !important;
  min-width:104px !important;
  max-width:104px !important;
}

/* 表头与正文统一成同一套 2 等分网格，中心线完全一致。 */
.preference-header.th-inner,
.preference-stack{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  width:100% !important;
  padding:0 !important;
  gap:0 !important;
}

.preference-header.th-inner{
  min-height:42px !important;
  align-items:stretch !important;
}

.preference-header-row{
  width:100% !important;
  min-width:0 !important;
  padding:4px 5px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  display:grid !important;
  grid-template-rows:18px 14px !important;
  align-content:center !important;
  justify-items:center !important;
  background:transparent !important;
}

/* 清掉所有历史遗留的中间细线。 */
.preference-header-row + .preference-header-row,
.preference-header-ignore,
.preference-header-favorite,
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  border-left:0 !important;
  border-right:0 !important;
}

/* “不感兴趣”不再贴边；两边文字采用同一规格。 */
.preference-header-row .th-line{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
}
.preference-header-row .header-label{
  width:auto !important;
  margin:0 auto !important;
  padding:0 !important;
  color:#fff !important;
  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.15px !important;
  white-space:nowrap !important;
  text-align:center !important;
}
.preference-header-row .header-label.header-label-sub{
  color:#A7ADC0 !important;
}
.preference-header-svg{
  width:11px !important;
  height:11px !important;
  margin:auto !important;
}

/* 正文图标也严格在各自半区中心。 */
.preference-stack{
  min-height:36px !important;
  align-items:stretch !important;
}
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:36px !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Hover 更明显：浅黄块 + 轻描边 + 图标变深放大。 */
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(244,194,26,.42) !important;
  box-shadow:inset 0 0 0 1px rgba(23,23,23,.16) !important;
  color:#171717 !important;
}
.jobs-page .preference-stack .interest-btn:hover .preference-icon-svg,
.jobs-page .preference-stack .favorite-btn:hover .preference-icon-svg{
  transform:scale(1.14) !important;
}
.preference-header-row:hover{
  background:rgba(244,194,26,.22) !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}

/* ===== DDL：改成真正的两行组合表头 ===== */
.ddl-combined-header{
  position:relative !important;
  display:grid !important;
  grid-template-rows:22px 17px !important;
  align-content:center !important;
  gap:0 !important;
  padding:2px 18px 2px 6px !important;
  overflow:visible !important;
}
.ddl-header-main-line,
.ddl-header-sub-line{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
}
.ddl-header-main-line{
  gap:5px !important;
}
.ddl-sort-arrow-group{
  position:static !important;
  transform:none !important;
  flex:0 0 auto !important;
}

/* 下方做成干净的小型 toggle，而不是歪着贴在底部。 */
.ddl-hide-closed-header-toggle{
  position:static !important;
  transform:none !important;
  width:auto !important;
  max-width:100% !important;
  min-height:15px !important;
  height:15px !important;
  padding:0 4px !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#A7ADC0 !important;
  font-size:8px !important;
  font-weight:400 !important;
  line-height:15px !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
.ddl-header-check{
  width:9px !important;
  height:9px !important;
  flex:0 0 9px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #A7ADC0 !important;
  background:transparent !important;
  color:#171717 !important;
  font-size:7px !important;
  line-height:1 !important;
}
.ddl-hide-closed-header-toggle:hover{
  background:rgba(255,255,255,.10) !important;
  color:#fff !important;
}
.ddl-hide-closed-header-toggle:hover .ddl-header-check{
  border-color:#fff !important;
}
.ddl-hide-closed-header-toggle.active{
  color:#F4C21A !important;
  font-weight:500 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  border-color:#F4C21A !important;
  background:#F4C21A !important;
  color:#171717 !important;
}

/* 覆盖 V191 里为旧绝对定位方案留下的额外 padding。 */
.jobs-page .jobs-table th:has(.ddl-hide-closed-header-toggle) .th-inner{
  padding-bottom:2px !important;
}

/* reference  id="v193-alignment-hover-ddl-search-unification" */

/* =========================================================
   1) 第一列：表头 / 正文真正共用同一条 50/50 轴线
   ========================================================= */
.jobs-page .jobs-table th.favorite-col,
.jobs-page .jobs-table td.favorite-col,
.jobs-page .jobs-header-table th.favorite-col{
  width:104px !important;
  min-width:104px !important;
  max-width:104px !important;
  padding:0 !important;
  box-sizing:border-box !important;
}

.preference-header.th-inner,
.preference-stack{
  width:104px !important;
  min-width:104px !important;
  max-width:104px !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:52px 52px !important;
  column-gap:0 !important;
  box-sizing:border-box !important;
}

.preference-header-row,
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  width:52px !important;
  min-width:52px !important;
  max-width:52px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* 表头两块完全独立，不再黏连，也不保留任何中线。 */
.preference-header-row{
  padding:4px 3px !important;
  border:0 !important;
  background:transparent !important;
}
.preference-header-row + .preference-header-row{
  border:0 !important;
}

/* 两边主文字在自己的 52px 内居中。 */
.preference-header-row .th-line{
  width:100% !important;
  justify-content:center !important;
}
.preference-header-row .header-label{
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  max-width:100% !important;
  text-align:center !important;
  font-size:8.4px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.15px !important;
  white-space:nowrap !important;
}

/* 和 Position 第二行文字使用同一灰色。 */
.preference-header-row .header-label.header-label-sub,
.preference-header-row .preference-header-icon{
  color:#c4c0b3 !important;
}
.preference-header-svg{
  width:10.5px !important;
  height:10.5px !important;
  color:inherit !important;
}

/* 行 hover 不再把第一列两半一起染黄；只有真正 hover 的半区高亮。 */
.jobs-page .jobs-table tbody tr:nth-child(odd):hover td.favorite-col{
  background:var(--paper-warm) !important;
}
.jobs-page .jobs-table tbody tr:nth-child(even):hover td.favorite-col{
  background:var(--row-alt) !important;
}

.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  border:0 !important;
  background:transparent !important;
  transition:background-color .11s ease, color .11s ease, box-shadow .11s ease !important;
}

/* hover 更明确：只亮当前这一半 */
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:#f2d45f !important;
  color:#171717 !important;
  box-shadow:inset 0 0 0 1px rgba(23,23,23,.22) !important;
}
.jobs-page .preference-stack .interest-btn:hover .preference-icon-svg,
.jobs-page .preference-stack .favorite-btn:hover .preference-icon-svg{
  transform:scale(1.15) !important;
}

/* 表头也只亮当前半区，不联动另一半 */
.preference-header-row:hover{
  background:rgba(244,194,26,.24) !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}

/* =========================================================
   2) DDL：左对齐、轻量、小勾选框
   ========================================================= */
.ddl-combined-header{
  padding:2px 8px !important;
  grid-template-rows:22px 15px !important;
}

.ddl-header-main-line,
.ddl-header-sub-line{
  width:100% !important;
  justify-content:flex-start !important;
  text-align:left !important;
  padding:0 !important;
  margin:0 !important;
}

.ddl-header-main-line{
  gap:4px !important;
}

.ddl-hide-closed-header-toggle{
  position:static !important;
  transform:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:3px !important;
  height:13px !important;
  min-height:13px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#c4c0b3 !important;
  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:13px !important;
  white-space:nowrap !important;
}

.ddl-header-check{
  width:7px !important;
  height:7px !important;
  min-width:7px !important;
  flex:0 0 7px !important;
  padding:0 !important;
  border:1px solid #c4c0b3 !important;
  background:transparent !important;
  color:#171717 !important;
  font-size:6px !important;
  line-height:6px !important;
}

.ddl-hide-closed-header-toggle:hover{
  color:#fff !important;
  background:transparent !important;
}
.ddl-hide-closed-header-toggle:hover .ddl-header-check{
  border-color:#fff !important;
}
.ddl-hide-closed-header-toggle.active{
  color:#c4c0b3 !important;
  font-weight:400 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  border-color:#c4c0b3 !important;
  background:#f4c21a !important;
  color:#171717 !important;
}

/* =========================================================
   3) 所有下拉搜索框统一：高度、字体、边框、padding
   ========================================================= */
.field-menu-backdrop .field-menu-search,
.field-menu-backdrop .hierarchy-filter-search,
.field-menu-backdrop .tier-filter-search,
.status-dropdown .field-menu-search{
  box-sizing:border-box !important;
  height:36px !important;
  min-height:36px !important;
  max-height:36px !important;
  padding:0 10px !important;
  border:1px solid #98a2b3 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-family:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:34px !important;
  letter-spacing:0 !important;
  outline:none !important;
}

.field-menu-backdrop .field-menu-search::placeholder,
.field-menu-backdrop .hierarchy-filter-search::placeholder,
.field-menu-backdrop .tier-filter-search::placeholder{
  color:#98a2b3 !important;
  opacity:1 !important;
  font-size:11px !important;
  font-weight:400 !important;
}

.field-menu-backdrop .field-menu-search:focus,
.field-menu-backdrop .hierarchy-filter-search:focus,
.field-menu-backdrop .tier-filter-search:focus{
  border-color:#171717 !important;
  box-shadow:none !important;
}

/* hierarchy 类搜索框保持外边距，但内部规格完全一致 */
.field-menu-backdrop .hierarchy-filter-search,
.field-menu-backdrop .tier-filter-search{
  width:calc(100% - 24px) !important;
  margin-left:12px !important;
  margin-right:12px !important;
}

/* reference  id="v194-hover-position-spacing-ddl-check" */

/* =========================================================
   1) 第一列 hover：不要像一整块黄按钮，改成更自然的浅灰/米白反馈
   ========================================================= */
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  transition:background-color .12s ease, color .12s ease, transform .12s ease !important;
}
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(23,23,23,.065) !important;
  color:#171717 !important;
  box-shadow:none !important;
}
.jobs-page .preference-stack .interest-btn:hover .preference-icon-svg,
.jobs-page .preference-stack .favorite-btn:hover .preference-icon-svg{
  transform:scale(1.10) !important;
}
.preference-header-row:hover{
  background:rgba(255,255,255,.07) !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}

/* =========================================================
   2) Position 下拉：顶部操作区和搜索框之间留出明确空间
   ========================================================= */
.position-filter-job-type-style .hierarchy-top-actions,
.position-filter-job-type-style .position-filter-top-actions{
  margin-bottom:10px !important;
}
.position-filter-job-type-style .position-filter-heading{
  margin-bottom:6px !important;
}
.position-filter-job-type-style .hierarchy-filter-search{
  margin-top:0 !important;
  margin-bottom:12px !important;
}

/* =========================================================
   3) DDL 隐藏已关闭：小方框 + CSS 勾，开启后一定可见
   ========================================================= */
.ddl-hide-closed-header-toggle{
  gap:3px !important;
  color:#c4c0b3 !important;
}
.ddl-header-check{
  position:relative !important;
  width:7px !important;
  height:7px !important;
  min-width:7px !important;
  flex:0 0 7px !important;
  border:1px solid currentColor !important;
  background:transparent !important;
  box-sizing:border-box !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  background:#f4c21a !important;
  border-color:#f4c21a !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check::after{
  content:"" !important;
  position:absolute !important;
  left:1.2px !important;
  top:0.8px !important;
  width:3px !important;
  height:1.7px !important;
  border-left:1px solid #171717 !important;
  border-bottom:1px solid #171717 !important;
  transform:rotate(-45deg) !important;
  transform-origin:center !important;
}

/* reference  id="v195-full-cell-preference-hover" */

/* 第一列 hover 占满各自半格，不再只像图标周围一个大方框。 */
.jobs-page .jobs-table td.favorite-col{
  padding:0 !important;
}
.preference-stack{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  align-items:stretch !important;
}
.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  align-self:stretch !important;
  justify-self:stretch !important;
  border-radius:0 !important;
}

/* Hover 直接铺满对应半格。 */
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(23,23,23,.075) !important;
  box-shadow:none !important;
}

/* 行本身的黄色 hover 不要覆盖第一列，让左右半格 hover 自己接管。 */
.jobs-page .jobs-table tbody tr:hover td.favorite-col{
  background:inherit !important;
}

/* reference  id="v196-preference-cell-hover-and-header-isolation" */

/* =========================================================
   1) 正文：hover 必须覆盖整个半格的完整行高
   ========================================================= */
.jobs-page .jobs-table td.favorite-col{
  padding:0 !important;
  position:sticky !important;
}

.preference-stack{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:stretch !important;
  justify-items:stretch !important;
  gap:0 !important;
}

.jobs-page .preference-stack .interest-btn,
.jobs-page .preference-stack .favorite-btn{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  align-self:stretch !important;
  justify-self:stretch !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}

/* 只高亮当前半格，完整占满从上边到下边的区域 */
.jobs-page .preference-stack .interest-btn:hover,
.jobs-page .preference-stack .favorite-btn:hover{
  background:rgba(23,23,23,.085) !important;
  color:#171717 !important;
  box-shadow:none !important;
}

/* 第一列不继承整行黄色 hover，避免覆盖半格反馈 */
.jobs-page .jobs-table tbody tr:hover td.favorite-col{
  background:inherit !important;
}

/* =========================================================
   2) 表头：两块 hover 完全隔离
   ========================================================= */
.preference-header.th-inner{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:stretch !important;
  justify-items:stretch !important;
  gap:0 !important;
  padding:0 !important;
}

.preference-header-row{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:4px 3px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  display:grid !important;
  grid-template-rows:1fr 1fr !important;
  align-items:center !important;
  justify-items:center !important;
}

/* 只允许自身 hover 自身亮，不通过父层传播视觉效果 */
.preference-header-row:hover{
  background:rgba(255,255,255,.09) !important;
}
.preference-header-row:not(:hover){
  background:transparent !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}
.preference-header-row:not(:hover) .preference-header-icon{
  color:#c4c0b3 !important;
}

/* active 仍只作用于自身 */
.preference-header-row.active .preference-header-icon{
  color:#F4C21A !important;
}

/* reference  id="v197-header-hover-debug-and-ddl-check-fix" */

/* =========================================================
   DEBUG 根因：
   老规则 .jobs-page .jobs-table th.favorite-col:hover 会把整个 TH 变黄，
   所以 hover 左半区时右半区也跟着亮。
   这里先彻底取消父 TH 的 hover，再只允许两个子按钮各自 hover。
   ========================================================= */
.jobs-page .jobs-table th.favorite-col,
.jobs-page .jobs-table th.favorite-col:hover,
.jobs-page .jobs-table th.favorite-col.frozen-col,
.jobs-page .jobs-table th.favorite-col.frozen-col:hover{
  background:var(--ink) !important;
  color:#fff !important;
}

/* 父容器永远不产生 hover 底色 */
.preference-header,
.preference-header:hover,
.preference-header.th-inner,
.preference-header.th-inner:hover{
  background:transparent !important;
}

/* 两边彻底独立 */
.preference-header-row{
  background:transparent !important;
}
.preference-header-row:hover{
  background:rgba(255,255,255,.11) !important;
}
.preference-header-row:not(:hover){
  background:transparent !important;
}

/* 未 hover 的另一半符号保持岗位类型次级灰，不再被父 hover 改色 */
.preference-header-row:not(:hover) .preference-header-icon{
  color:#c4c0b3 !important;
}
.preference-header-row:hover .preference-header-icon{
  color:#fff !important;
}
.preference-header-row.active:not(:hover) .preference-header-icon{
  color:#F4C21A !important;
}

/* =========================================================
   DDL 小勾：不用旋转 border 画勾，改成稳定的 ✓ glyph。
   方框仍然很小，但在黑底上一定可见。
   ========================================================= */
.ddl-hide-closed-header-toggle{
  color:#c4c0b3 !important;
  gap:3px !important;
}
.ddl-header-check{
  position:relative !important;
  width:8px !important;
  height:8px !important;
  min-width:8px !important;
  flex:0 0 8px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #c4c0b3 !important;
  background:transparent !important;
  box-sizing:border-box !important;
  color:#c4c0b3 !important;
  font-size:7px !important;
  font-weight:700 !important;
  line-height:7px !important;
  overflow:visible !important;
}
.ddl-header-check::after{
  content:"" !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  border-color:#c4c0b3 !important;
  background:transparent !important;
  color:#F4C21A !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check::after{
  content:"✓" !important;
  position:static !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  transform:none !important;
  color:#F4C21A !important;
  font-size:7px !important;
  font-weight:700 !important;
  line-height:7px !important;
}

/* reference  id="v198-header-hover-and-ddl-check-debug" */

/* =========================================================
   1) 第一列表头 hover：只亮当前半区，并与其他表头一样用明黄色
   ========================================================= */

/* 父 th 永远保持黑色，杜绝 hover 传染到左右两块。 */
.jobs-page .jobs-table th.favorite-col,
.jobs-page .jobs-table th.favorite-col:hover,
.jobs-page .jobs-table th.favorite-col.frozen-col,
.jobs-page .jobs-table th.favorite-col.frozen-col:hover{
  background:var(--ink) !important;
  color:#fff !important;
}

/* 两个子按钮独立控制自己的 hover。 */
.jobs-page .jobs-table th.favorite-col .preference-header-row{
  background:transparent !important;
}
.jobs-page .jobs-table th.favorite-col .preference-header-row:hover{
  background:var(--yellow) !important;
}

/* hover 当前半区时，主文字按普通表头 hover 变黑。 */
.jobs-page .jobs-table th.favorite-col .preference-header-row:hover .header-label{
  color:var(--ink) !important;
}

/* 示例符号保持灰色体系，不跟着另一半变亮。 */
.jobs-page .jobs-table th.favorite-col .preference-header-row:not(:hover) .preference-header-icon{
  color:#c4c0b3 !important;
}
.jobs-page .jobs-table th.favorite-col .preference-header-row:hover .preference-header-icon{
  color:#77736b !important;
}

/* 激活但未 hover 时维持黄色提示；不会影响另一半。 */
.jobs-page .jobs-table th.favorite-col .preference-header-row.active:not(:hover) .preference-header-icon{
  color:#F4C21A !important;
}

/* =========================================================
   2) DDL：checkbox 与“隐藏已关闭”完全同一灰度、同一视觉高度
   ========================================================= */
.ddl-hide-closed-header-toggle{
  color:#c4c0b3 !important;
  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:10px !important;
  height:10px !important;
  min-height:10px !important;
  gap:3px !important;
}

.ddl-header-check{
  position:static !important;
  width:8.5px !important;
  height:8.5px !important;
  min-width:8.5px !important;
  flex:0 0 8.5px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid currentColor !important;
  background:transparent !important;
  color:inherit !important;
  font-family:Arial,"Inter","Noto Sans SC",sans-serif !important;
  font-size:7px !important;
  font-weight:700 !important;
  line-height:7px !important;
  overflow:hidden !important;
}

/* 清掉所有历史 pseudo 勾，避免和真实字符打架。 */
.ddl-header-check::after{
  content:none !important;
  display:none !important;
}

/* 选中后：框、字、勾仍全部使用同一灰度。 */
.ddl-hide-closed-header-toggle.active{
  color:#c4c0b3 !important;
  font-weight:400 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  border-color:currentColor !important;
  background:transparent !important;
  color:inherit !important;
}

/* hover DDL 次级功能时只轻微提亮，不破坏次级层级。 */
.ddl-hide-closed-header-toggle:hover{
  color:#fff !important;
  background:transparent !important;
}

/* reference  id="v199-ddl-check-runtime-fix" */

.ddl-header-check{
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  flex:0 0 9px !important;
  overflow:visible !important;
  color:#c4c0b3 !important;
  border-color:#c4c0b3 !important;
  font-size:7px !important;
  font-weight:700 !important;
  line-height:8px !important;
}
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  color:#c4c0b3 !important;
  border-color:#c4c0b3 !important;
  background:transparent !important;
}

/* reference  id="v200-ddl-svg-checkbox-final" */

/*
  DDL 勾选框最终方案：
  不再使用字符 ✓、伪元素或 border 拼勾。
  直接用 SVG，彻底消除字体、line-height、overflow 导致的“勾不显示”问题。
*/
.ddl-hide-closed-header-toggle{
  color:#c4c0b3 !important;
  font-size:8.5px !important;
  line-height:10px !important;
  height:10px !important;
  min-height:10px !important;
  gap:3px !important;
}

.ddl-header-check{
  display:block !important;
  width:7px !important;
  height:7px !important;
  min-width:7px !important;
  flex:0 0 7px !important;
  overflow:visible !important;
  color:#c4c0b3 !important;
}

.ddl-check-box{
  opacity:1 !important;
}

.ddl-check-mark{
  opacity:0 !important;
}

/* 选中时仅显示勾；框和字仍保持同一灰度，不放大、不变黄。 */
.ddl-hide-closed-header-toggle.active{
  color:#c4c0b3 !important;
  font-weight:400 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-check-mark{
  opacity:1 !important;
}

/* 清理历史 span / pseudo 方案残留 */
.ddl-header-check::before,
.ddl-header-check::after{
  content:none !important;
  display:none !important;
}

/* reference  id="v201-ddl-root-cause-fix" */

.ddl-hide-closed-header-toggle{
  color:#c4c0b3 !important;
  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:10px !important;
  height:10px !important;
  min-height:10px !important;
  gap:3px !important;
}

.ddl-header-check{
  width:7px !important;
  height:7px !important;
  min-width:7px !important;
  flex:0 0 7px !important;
  display:block !important;
  overflow:visible !important;
  color:#c4c0b3 !important;
}

.ddl-check-box{
  opacity:1 !important;
  stroke:currentColor !important;
}

.ddl-check-mark{
  opacity:0 !important;
  stroke:currentColor !important;
}

.ddl-hide-closed-header-toggle.active .ddl-check-mark{
  opacity:1 !important;
}

/* reference  id="v202a-ddl-active-fill" */

/* 方案 A：选中后整个小方框明黄色填充，黑色勾。 */
.ddl-hide-closed-header-toggle.active .ddl-header-check{
  color:#171717 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-check-box{
  fill:#F4C21A !important;
  stroke:#F4C21A !important;
  opacity:1 !important;
}
.ddl-hide-closed-header-toggle.active .ddl-check-mark{
  stroke:#171717 !important;
  stroke-width:1.45 !important;
  opacity:1 !important;
}

/* reference  id="v204-column-settings-match-graduation-menu" */

/* =========================================================
   调整列 / 冻结列：
   统一到“毕业区间”下拉框的白底、黑框、细分隔线、方形按钮体系
   ========================================================= */

/* ---------- common modal shell ---------- */
.col-modal,
.freeze-columns-modal{
  width:min(470px,calc(100vw - 24px)) !important;
  min-width:min(420px,calc(100vw - 24px)) !important;
  max-height:min(680px,calc(100vh - 32px)) !important;
  padding:16px 18px 18px !important;
  border:1px solid #171717 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  box-shadow:0 12px 34px rgba(17,17,17,.18) !important;
}

.col-modal-head,
.freeze-columns-head{
  min-height:32px !important;
  margin:0 0 12px !important;
  padding:0 0 12px !important;
  border:0 !important;
  border-bottom:1px solid #d8d5ce !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.col-modal-title-group{
  display:flex !important;
  align-items:baseline !important;
  gap:9px !important;
}

.col-modal-head h2,
.freeze-columns-head h2{
  margin:0 !important;
  color:#171717 !important;
  font-family:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  letter-spacing:0 !important;
}

.col-width-hint,
.freeze-columns-copy{
  color:#66635d !important;
  font-size:11.5px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

.col-width-hint{
  margin:0 !important;
}

/* close：和毕业区间里的轻量操作保持一致，不做浮夸 icon button */
.col-close,
.freeze-columns-close{
  width:26px !important;
  height:26px !important;
  padding:0 !important;
  border:1px solid #c9c6be !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#66635d !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.col-close:hover,
.freeze-columns-close:hover{
  border-color:#171717 !important;
  background:#fff !important;
  color:#171717 !important;
}

/* ---------- 调整列 ---------- */
.col-list{
  max-height:min(500px,calc(100vh - 205px)) !important;
  margin:0 !important;
  padding:0 !important;
  border-top:0 !important;
  background:#fff !important;
}

.col-row{
  min-height:36px !important;
  gap:9px !important;
  padding:7px 4px !important;
  border:0 !important;
  border-bottom:1px solid #e2dfd8 !important;
  background:#fff !important;
}
.col-row:hover{
  background:#FFF6F8 !important;
}
.col-row.drag-over-before{
  box-shadow:inset 0 2px 0 #171717 !important;
}
.col-row.drag-over-after{
  box-shadow:inset 0 -2px 0 #171717 !important;
}

.col-drag-handle{
  touch-action:none;
  width:16px !important;
  flex:0 0 16px !important;
  color:#aaa59b !important;
  font-size:15px !important;
}

/* Keep the entire resize target inside its header, not beneath the next one. */
.jobs-page .resize{
  right:0;
  z-index:2;
}
.col-row:hover .col-drag-handle{
  color:#171717 !important;
}

.col-check{
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
}
.col-check input{
  width:13px !important;
  height:13px !important;
  border:1px solid #bdb9b0 !important;
  border-radius:0 !important;
  background:#fff !important;
}
.col-check input:checked{
  border-color:#171717 !important;
  background:#171717 !important;
}
.col-check input::after{
  width:5px !important;
  height:3px !important;
  border-left:1.4px solid #fff !important;
  border-bottom:1.4px solid #fff !important;
}

.col-name{
  color:#171717 !important;
  font-size:11.5px !important;
  font-weight:400 !important;
  line-height:1.35 !important;
}

/* footer 直接复用毕业区间“清除筛选 / 确定”的视觉 */
.col-modal-foot{
  margin:14px 0 0 !important;
  padding:12px 0 0 !important;
  border:0 !important;
  border-top:1px solid #d8d5ce !important;
  background:#fff !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

.col-restore,
.col-done,
.freeze-columns-actions button{
  min-width:74px !important;
  height:30px !important;
  padding:0 12px !important;
  border-radius:0 !important;
  font-family:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  line-height:28px !important;
  text-align:center !important;
  text-decoration:none !important;
}

.col-restore,
.freeze-columns-secondary{
  border:1px solid #bdb9b0 !important;
  background:#fff !important;
  color:#4f4c46 !important;
}
.col-restore:hover,
.freeze-columns-secondary:hover{
  border-color:#171717 !important;
  background:#fff !important;
  color:#171717 !important;
  text-decoration:none !important;
}

.col-done,
.freeze-columns-primary{
  border:1px solid #171717 !important;
  background:#171717 !important;
  color:#fff !important;
}
.col-done:hover,
.freeze-columns-primary:hover{
  border-color:#171717 !important;
  background:#171717 !important;
  color:#fff !important;
  box-shadow:inset 0 -3px 0 #F4C21A !important;
}

/* ---------- 冻结列 ---------- */
.freeze-columns-modal{
  overflow:hidden !important;
}
.freeze-columns-accent,
.freeze-columns-kicker{
  display:none !important;
}

.freeze-columns-copy{
  margin:0 0 13px !important;
}

.freeze-columns-preview{
  margin:0 0 14px !important;
  min-height:48px !important;
  padding:10px 12px !important;
  border:1px solid #171717 !important;
  border-left:5px solid #DFA4B4 !important;
  background:#FFF6F8 !important;
  color:#2f2c28 !important;
  font-size:11.5px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

.freeze-columns-control{
  display:grid !important;
  grid-template-columns:34px 1fr 34px !important;
  align-items:stretch !important;
  height:34px !important;
  border:1px solid #171717 !important;
  background:#fff !important;
}
.freeze-columns-control > button{
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:16px !important;
  font-weight:400 !important;
}
.freeze-columns-control > button:first-child{
  border-right:1px solid #d8d5ce !important;
}
.freeze-columns-control > button:last-child{
  border-left:1px solid #d8d5ce !important;
}
.freeze-columns-control > button:hover{
  background:#171717 !important;
  color:#fff !important;
}

.freeze-columns-control label{
  min-height:32px !important;
  gap:4px !important;
  background:#fff !important;
}
.freeze-columns-control input{
  width:42px !important;
  color:#171717 !important;
  font-size:12px !important;
  font-weight:600 !important;
  line-height:1 !important;
}
.freeze-columns-control label span{
  color:#66635d !important;
  font-size:11.5px !important;
  font-weight:400 !important;
}

.freeze-columns-range{
  margin-top:6px !important;
  color:#aaa59b !important;
  font-size:9.5px !important;
  text-align:left !important;
}

.freeze-columns-actions{
  margin-top:14px !important;
  padding-top:12px !important;
  border-top:1px solid #d8d5ce !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

/* backdrop 也与 field menu 更克制 */
.freeze-columns-backdrop,
.modal-backdrop:has(.col-modal){
  background:rgba(17,17,17,.18) !important;
  backdrop-filter:none !important;
}

@media(max-width:560px){
  .col-modal,
  .freeze-columns-modal{
    width:calc(100vw - 20px) !important;
    min-width:0 !important;
    padding:14px !important;
  }
}

/* reference  id="v205-freeze-preview-pony" */

/* V205: add user's pony into 冻结列提示卡 */
.freeze-columns-preview{
  position:relative !important;
  overflow:hidden !important;
  padding-right:118px !important;
  min-height:62px !important;
  display:flex !important;
  align-items:center !important;
}
.freeze-columns-preview::after{
  content:"";
  position:absolute;
  right:14px;
  bottom:6px;
  width:86px;
  height:56px;
  background-image:url("/assets/v222-264cfa0c3949.png");
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:contain;
  opacity:.96;
  pointer-events:none;
}
@media (max-width: 560px){
  .freeze-columns-preview{
    padding-right:90px !important;
    min-height:58px !important;
  }
  .freeze-columns-preview::after{
    right:10px;
    width:66px;
    height:44px;
  }
}

/* reference  id="v206-freeze-and-date-refine" */

.freeze-columns-preview{
  padding-right:126px !important;
  min-height:68px !important;
  display:flex !important;
  align-items:center !important;
}
.freeze-columns-preview::after{
  right:16px !important;
  bottom:-3px !important;
  width:90px !important;
  height:58px !important;
}
.field-menu-backdrop .date-filter-popover.date-filter-popover-enhanced{
  width:min(420px, calc(100vw - 24px)) !important;
  padding-bottom:20px !important;
}
.field-menu-backdrop .date-filter-popover.date-filter-popover-enhanced .field-menu-title{
  margin-bottom:16px !important;
}
.field-menu-backdrop .date-filter-popover.date-filter-popover-enhanced .date-preset-grid{
  margin-bottom:14px !important;
}
.date-last-visit-panel{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid #d9d2c5;
  background:#fffdf8;
}
.date-last-visit-panel.is-active{
  border-color:#171717;
  background:#fff7d8;
}
.date-last-visit-btn{
  width:100%;
  min-height:44px !important;
  justify-content:flex-start !important;
  padding:0 14px !important;
  border:1px solid #171717 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:15px !important;
  font-weight:700 !important;
}
.date-last-visit-btn:hover,
.date-last-visit-btn:focus-visible{
  background:#f3e19b !important;
}
.date-last-visit-btn.is-active{
  background:#171717 !important;
  color:#f3de78 !important;
}
.date-last-visit-btn[disabled]{
  opacity:.48;
  cursor:not-allowed;
  background:#f5f1e8 !important;
}
.date-last-visit-note{
  color:#7a736a;
  font-size:12px;
  line-height:1.45;
}
.date-filter-popover-enhanced .date-range-grid{
  gap:18px !important;
}
.date-filter-popover-enhanced .date-range-grid > label > span{
  margin-bottom:8px !important;
}
.date-filter-popover-enhanced .date-input-shell{
  border-color:#171717 !important;
}
.date-filter-popover-enhanced .date-calendar-trigger{
  border-left-color:#171717 !important;
}
@media (max-width:560px){
  .freeze-columns-preview{
    padding-right:92px !important;
    min-height:62px !important;
  }
  .freeze-columns-preview::after{
    right:12px !important;
    width:68px !important;
    height:44px !important;
    bottom:-2px !important;
  }
  .date-last-visit-btn{
    font-size:13px !important;
  }
}

/* reference  id="v211-date-filter-final" */

/* 关键：主容器、标题、提示卡、section、radio、两列日期、chip 全部直接复用 graduation-*。 */
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-preset-options{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-preset-option{
  appearance:none !important;
  width:100% !important;
  font-family:inherit !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-last-visit-trigger{
  cursor:pointer !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-last-visit-trigger[disabled]{
  cursor:not-allowed !important;
  opacity:.45 !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-last-visit-note{
  margin:-2px 0 0 19px !important;
  color:#66635d !important;
  font-size:11.5px !important;
  line-height:1.45 !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .graduation-date-input-shell{
  display:grid !important;
  grid-template-columns:1fr 36px !important;
  width:100% !important;
  height:34px !important;
  border:1px solid #171717 !important;
  border-radius:0 !important;
  background:#fff !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .graduation-date-input-shell .input{
  width:100% !important;
  min-width:0 !important;
  height:32px !important;
  padding:5px 8px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:22px !important;
  box-shadow:none !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .graduation-date-input-shell .input:focus{
  outline:0 !important;
  box-shadow:inset 0 -3px 0 #c9c6be !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-calendar-trigger{
  position:relative !important;
  width:36px !important;
  min-width:36px !important;
  height:32px !important;
  min-height:32px !important;
  padding:0 !important;
  border:0 !important;
  border-left:1px solid #171717 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  box-shadow:none !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-calendar-trigger::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:16px !important;
  height:16px !important;
  transform:translate(-50%,-50%) !important;
  background:currentColor !important;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 2h2v2h6V2h2v2h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM4 8h16V6H4v2Z"/></svg>') center/contain no-repeat !important;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 2h2v2h6V2h2v2h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h3V2Zm13 8H4v10h16V10ZM4 8h16V6H4v2Z"/></svg>') center/contain no-repeat !important;
}
.field-menu.graduation-match-menu.date-filter-graduation-menu .date-calendar-trigger:hover{
  background:#f7f6f2 !important;
}
@media(max-width:560px){
  .field-menu.graduation-match-menu.date-filter-graduation-menu .date-preset-options{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* reference  id="v216-graduation-original-restore" */

/* Surgical restore only: graduation date fields back to the original native month inputs. */
.field-menu.graduation-match-menu.graduation-menu-refined .graduation-date-field input[type="month"]{
  width:100% !important;
  min-width:0 !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 8px !important;
  border:1px solid #171717 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#171717 !important;
  font-size:12px !important;
  font-weight:400 !important;
  box-shadow:none !important;
}
.field-menu.graduation-match-menu.graduation-menu-refined .graduation-date-field input[type="month"]:focus{
  outline:0 !important;
  border-color:#171717 !important;
  background:#fffdfa !important;
  box-shadow:inset 0 -2px 0 #f5d976 !important;
}

/* reference  id="v221-hide-date-mask-caret" */

/* 掩码日期输入仍可正常键盘输入，但不显示闪烁文本光标。 */
.graduation-month-display[data-graduation-month-mask],
.smart-date-mask[data-date-mask],
.graduation-month-display[data-graduation-month-mask]:focus,
.smart-date-mask[data-date-mask]:focus{
  caret-color: transparent !important;
}

/* Production adapter: remove the pre-v183 rule that hid the selected summary. */
.position-filter-menu.position-filter-job-type-style .hierarchy-filter-selected {
  display:block !important;
  flex-shrink:0;
}
.graduation-menu-refined .graduation-date-single { max-width:none; width:100%; }
@media (prefers-reduced-motion: reduce) {
  .graduation-month-display, .smart-date-mask { transition:none !important; }
}

/* reference  id="v222-date-mask-affordance" */

/* 没有闪烁光标后，用「输入态」和轻提示告诉用户这里仍可键盘输入。 */
.graduation-month-display[data-graduation-month-mask],
.smart-date-mask[data-date-mask]{
  cursor:text !important;
  transition:background-color .14s ease, box-shadow .14s ease !important;
}

.graduation-month-shell:has(.graduation-month-display[data-graduation-month-mask]):hover,
.graduation-date-input-shell:has(.smart-date-mask[data-date-mask]):hover{
  background:#fffdf4 !important;
}

.graduation-month-shell:has(.graduation-month-display[data-graduation-month-mask]):focus-within,
.graduation-date-input-shell:has(.smart-date-mask[data-date-mask]):focus-within{
  background:#fffaf0 !important;
  box-shadow:inset 0 -3px 0 #ecd97a !important;
}

/* 输入框本身保持透明，焦点反馈由整个 shell 承担。 */
.graduation-month-display[data-graduation-month-mask]:focus,
.smart-date-mask[data-date-mask]:focus{
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
}

/* 每个日期组只出现一条很轻的提示，不在每个输入框下重复。 */
.graduation-inline-section:has(.graduation-month-display[data-graduation-month-mask])::after,
.graduation-inline-section:has(.smart-date-mask[data-date-mask])::after{
  content:"可直接输入数字，也可点右侧日历选择";
  display:block;
  margin-top:7px;
  color:#9a9489;
  font-size:9.5px;
  font-weight:400;
  line-height:1.3;
  letter-spacing:0;
}

/* 鼠标经过 / 正在输入时，提示稍微变清楚。 */
.graduation-inline-section:has(.graduation-month-display[data-graduation-month-mask]):hover::after,
.graduation-inline-section:has(.graduation-month-display[data-graduation-month-mask]):focus-within::after,
.graduation-inline-section:has(.smart-date-mask[data-date-mask]):hover::after,
.graduation-inline-section:has(.smart-date-mask[data-date-mask]):focus-within::after{
  color:#5f5a52;
}

/* Real-data audit: align pre-v167 base styles with the reference's final cascade. */
.field-menu-backdrop .field-menu,
.field-menu-backdrop .date-filter-popover,
.field-menu-backdrop .job-type-hierarchy-menu {
  font-family: "Inter", "Noto Sans SC", sans-serif;
}
.field-menu-backdrop .field-menu :is(input, button, select) {
  font-family: inherit !important;
}
.graduation-match-menu .graduation-date-field { color:#57524a; }
.tier-filter-menu .hierarchy-filter-selected:not(.job-type-selected-summary) {
  display:flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:6px 8px;
  border-top:1px solid #e4e7ec;
  background:#fff;
}
/* The specification requires the summary even though the demo hides it.
   Collapsing hides only the removable entries, never the summary bar. */
.position-selected-summary .job-type-selected-panel:not(.expanded) { display:none; }
.col-modal .col-locked,
.col-modal .col-locked input { cursor:not-allowed !important; }
.application-flow-stage::before { box-sizing:border-box; }
.application-flow-stage-label { display:block; }
.open-date-cell .open-date-days { margin-left:0 !important; }
.jobs-page .jobs-table td.homepage-open-col .open-date-cell { letter-spacing:normal; }

/* User acceptance: status hint/chip/date share the cell's left text edge. */
.detail-load-status { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:16px; color:#111; background:rgba(255,255,255,.92); z-index:1; font:14px Arial,sans-serif; }
.detail-load-status button { padding:8px 14px; border:1px solid #111; background:#fff; color:#111; cursor:pointer; }
.personal-first-row-hint-status { justify-content:flex-start !important; padding:0 !important; }
.jobs-page td:has(.status-cell-trigger[data-open-status]) { cursor:pointer; }
.jobs-page .jobs-table .status-cell-stack { align-items:flex-start !important; }
.jobs-page .jobs-table .status-cell-stack .status-cell-trigger,
.jobs-page .jobs-table .status-cell-stack .status-selected-date {
  align-self:flex-start !important;
  margin:0 !important;
}
/* DDL uses the standard header menu, without value filters. */
.ddl-settings-menu .ddl-closed-option { display:flex; align-items:center; gap:10px; }
.ddl-settings-menu .ddl-option-check { display:inline-flex; align-items:center; justify-content:center; width:14px; height:14px; border:1px solid currentColor; flex:0 0 14px; font-size:12px; line-height:1; }
.ddl-settings-menu .ddl-closed-option[aria-checked="true"] .ddl-option-check { background:#fff0ad; }
