 /* ═══════════════════════════════════════════════════════
    按钮体系：.btn-xs / .btn-sm / .btn / .btn-lg
   ═══════════════════════════════════════════════════════ */

/* ----- 基础尺寸 ----- */
.btn-xs, .btn-sm, .btn, .btn-lg {
  border: 1px solid var(--border);
  font-weight: 600; cursor: pointer;
  background: var(--white); color: var(--text-muted);
  transition: all .12s; white-space: nowrap;
  display: inline-flex; align-items: center; gap: 4px;
  line-height: 1.4;
}
.btn-xs { padding: 2px 6px;  border-radius: 3px; font-size: 10px; }
.btn-sm { padding: 3px 7px;  border-radius: 4px; font-size: 11px; }
.btn    { padding: 4px 9px;  border-radius: 6px; font-size: 11px; }
.btn-lg { padding: 5px 12px; border-radius: 6px; font-size: 12px; }

/* ----- 通用状态变体（适用于所有尺寸） ----- */
.btn-xs:hover, .btn-sm:hover, .btn:hover, .btn-lg:hover         { border-color: var(--accent); color: var(--accent); }
.btn-xs.active, .btn-sm.active, .btn.active, .btn-lg.active      { background: var(--accent); color: var(--white); border-color: var(--accent); }
.btn-xs.active:hover, .btn-sm.active:hover, .btn.active:hover, .btn-lg.active:hover { background: var(--accent-hover); }
.btn-xs:disabled, .btn-sm:disabled, .btn:disabled, .btn-lg:disabled { opacity: .45; cursor: not-allowed; pointer-events: none; }
.btn-xs.primary, .btn-sm.primary, .btn.primary, .btn-lg.primary   { background: var(--accent); color: var(--white); border-color: var(--accent); }
.btn-xs.primary:hover, .btn-sm.primary:hover, .btn.primary:hover, .btn-lg.primary:hover { background: var(--accent-hover); }
.btn-xs.danger, .btn-sm.danger, .btn.danger, .btn-lg.danger      { color: var(--red); border-color: var(--red-border); }
.btn-xs.danger:hover, .btn-sm.danger:hover, .btn.danger:hover, .btn-lg.danger:hover    { background: var(--red-bg); }

/* ----- 语义变体 ----- */
.btn-xs.purple, .btn-sm.purple, .btn.purple, .btn-lg.purple      { border-color: var(--purple-border); color: var(--purple-text); background: var(--white); font-weight: 500; }
.btn-xs.purple:hover, .btn-sm.purple:hover, .btn.purple:hover, .btn-lg.purple:hover    { background: var(--purple-bg); }
.btn-xs.outline-accent, .btn-sm.outline-accent, .btn.outline-accent, .btn-lg.outline-accent { background: transparent; color: var(--accent); border-color: var(--accent); font-weight: 500; }
.btn-xs.outline-accent:hover, .btn-sm.outline-accent:hover, .btn.outline-accent:hover, .btn-lg.outline-accent:hover { background: var(--accent); color: var(--white); }
.btn-xs.outline-red, .btn-sm.outline-red, .btn.outline-red, .btn-lg.outline-red       { color: var(--red); border-color: var(--red); font-weight: 400; }
.btn-xs.outline-red:hover, .btn-sm.outline-red:hover, .btn.outline-red:hover, .btn-lg.outline-red:hover          { background: var(--red-bg); }

/* ═══════════════════════════════════════════════════════
   下拉按钮 .btn-drop
   ═══════════════════════════════════════════════════════ */
.btn-drop { position: relative; display: inline-block; }
.btn-drop > .btn::after,
.btn-drop > .btn-sm::after,
.btn-drop > .btn-lg::after { content: ' ▾'; font-size: 10px; opacity: .7; }
.btn-drop-menu {
  display: none;
  position: absolute;
  top: calc(100% + 3px);
  left: 0;
  min-width: 130px;
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: 6px;
  box-shadow: 0 4px 14px var(--black-10);
  z-index: 300;
  overflow: hidden;
}
.btn-drop.open .btn-drop-menu { display: block; }
.btn-drop-item {
  padding: 6px 12px;
  font-size: 11px;
  cursor: pointer;
  white-space: nowrap;
  color: var(--text);
  user-select: none;
}
.btn-drop-item:hover { background: var(--black-04); color: var(--accent); }
.btn-drop-item[disabled] { opacity: .5; pointer-events: none; }
/* 常用项高亮：浅黄底 + 左侧红色竖条 */
.btn-drop-item.hot {
  background: #fff3bf;
  font-weight: 600;
  box-shadow: inset 3px 0 0 #e03131;
}
.btn-drop-item.hot:hover { background: #ffe066; color: var(--accent); }
.btn-drop-sep {
  border-top: 1px solid var(--black-06, #e8e8e8);
  margin: 3px 0;
  pointer-events: none;
}
/* 下拉菜单分组标题（不可点击的灰字行，如"1个指令放10个词 · 省钱，出错整批跳过"） */
.btn-drop-head {
  padding: 6px 12px 2px;
  font-size: 10px;
  color: var(--text-3, #999);
  white-space: nowrap;
  cursor: default;
  user-select: none;
}

/* 发布工作台日期标题旁的下拉：右对齐避免溢出 */
.pw-day-drop .btn-drop-menu { left: auto; right: 0; }

/* 发布工作台日期头部的「缺图/待审」标记：实底白字，比 tag-img 浅底更醒目 */
.pw-day-flag {
  display: inline-block;
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 999px;
  font-weight: 600;
  white-space: nowrap;
  background: var(--accent);
  color: var(--white);
  line-height: 1.4;
}
/* 缺图比待审更需要处理，用红色区分 */
.pw-day-flag.pw-day-flag-red { background: var(--red); }
