/* ============================================================
   招投标情报 · 页面特有样式 V1.1
   共享组件见 shell.css
   ============================================================ */

/* ============ 表格列宽 ============ */
.col-name { min-width: 320px; }
.col-zone { width: 80px; }
.col-type { width: 120px; }
.col-publish { width: 110px; }
.col-deadline { width: 140px; }
.col-status { width: 100px; }
.col-action { width: 80px; text-align: right; }

.cell-name {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.4;
}
.cell-title {
  color: var(--color-text-primary);
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  cursor: pointer;
}
.cell-title:hover { color: var(--color-primary); }
.cell-sub {
  font-size: var(--fs-aux);
  color: var(--color-text-tertiary);
}

/* ============ 标签：公告类型（中性蓝灰）与业务状态（独立色系）============ */
.tag-notice {
  background: var(--bid-notice-bg);
  color: var(--bid-notice-text);
}
.tag-status-unread { background: var(--tag-bg-bid-unread); color: var(--bid-unread); }
.tag-status-following { background: var(--tag-bg-bid-following); color: var(--bid-following); }
.tag-status-bid { background: var(--tag-bg-bid-bid); color: var(--bid-bid); }
.tag-status-abandoned {
  background: var(--tag-bg-bid-abandoned);
  color: var(--bid-abandoned);
  text-decoration: line-through;
}

/* 截止日期四态 */
.deadline-normal { color: var(--color-text-primary); }
.deadline-soon { color: #D97706; font-weight: 600; }
.deadline-urgent { color: #E5484D; font-weight: 700; }
.deadline-past { color: var(--color-danger); font-weight: 600; }
.deadline-none { color: var(--color-text-tertiary); font-size: 12px; }

/* ============ 命中关键词 pill（竞品层级为品牌色）============ */
.keyword-pill {
  display: inline-block;
  padding: 1px 8px;
  border-radius: 10px;
  font-size: 11px;
  line-height: 16px;
  background: rgba(37, 99, 235, .10);
  color: #1D4ED8;
  white-space: nowrap;
}
.keyword-pill.brand {
  background: rgba(124, 58, 237, .12);
  color: #6D28D9;
  font-weight: 600;
}
.cell-kw { margin-top: 4px; }

/* ============ 层级口径提示 ============ */
.layer-hint {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 11px;
  line-height: 16px;
  color: var(--color-text-tertiary);
  background: var(--color-bg-subtle, #F1F5F9);
  border: 1px dashed var(--color-border);
  white-space: nowrap;
  align-self: center;
}

/* ============ 标讯提醒开关（位于筛选栏/手机工具行）============ */
.alert-slot { display: inline-flex; align-items: center; }
#filterBar .alert-slot { margin-left: auto; }
#alertToggle { display: none; } /* 仅在 JS 搬入槽位后显示 */
.alert-slot #alertToggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 14px;
  border: 1px solid var(--color-border);
  background: var(--color-bg-card);
  color: var(--color-text-tertiary);
  font-size: 12px;
  line-height: 18px;
  cursor: pointer;
  transition: all .15s;
  white-space: nowrap;
}
.alert-slot #alertToggle.is-on {
  border-color: rgba(37, 99, 235, .35);
  background: rgba(37, 99, 235, .08);
  color: #1D4ED8;
  font-weight: 600;
}
.alert-toggle:active { transform: scale(.97); }

/* ============ 采集状态分隔点 ============ */
.collect-sep { color: var(--color-text-tertiary); }
.collect-dot.dot-ok { background: var(--color-success); }
.collect-dot.dot-warn { background: var(--color-warning); }
.collect-dot.dot-err { background: var(--color-danger); }

/* ============ 手机卡片 ============ */
.mc-title {
  font-size: var(--fs-body);
  font-weight: 500;
  color: var(--color-text-primary);
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: var(--sp-2);
}
.mc-meta {
  display: flex;
  align-items: center;
  gap: var(--sp-2);
  margin-bottom: var(--sp-2);
  flex-wrap: wrap;
}
.mc-meta-item {
  font-size: var(--fs-aux);
  color: var(--color-text-secondary);
}
.mc-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mc-deadline { font-size: var(--fs-aux); }

/* 小屏 PC 列宽微调 */
@media (max-width: 1279px) {
  .col-name { min-width: 260px; }
}

/* ============ 手机：提醒开关收为图标，口径提示随标签换行 ============ */
@media (max-width: 767px) {
  #mAlertSlot .alert-toggle { padding: 5px 8px; }
  #mAlertSlot .at-text { display: none; }
  .sheet-field-label .layer-hint {
    margin-left: 8px;
    font-weight: 400;
  }
}
