/* ホーム「次回配信の候補」（YJJ）。プレフィックス .hyc-（home-yjj-candidates.ts） */
.hyc-slot { margin-top: 22px; text-align: left; }
.hyc-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 14px 16px;
  box-shadow: var(--shadow);
}
.hyc-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.hyc-title { font-size: 14px; font-weight: 600; color: var(--text); }
.hyc-body { margin-top: 8px; font-size: 13px; color: var(--text); }
.hyc-note { font-size: 12px; color: var(--text-sub); }
.hyc-warn { margin-top: 6px; font-size: 12px; color: #b45309; }
.hyc-empty { margin-top: 10px; color: var(--text-sub); }
.hyc-list { list-style: decimal; margin: 10px 0 0; padding-left: 22px; }
.hyc-item { padding: 6px 0; border-bottom: 1px solid var(--border); }
.hyc-item:last-child { border-bottom: none; }
.hyc-row { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.hyc-row input { margin-top: 3px; }
.hyc-main { min-width: 0; }
.hyc-bank { font-weight: 600; overflow-wrap: anywhere; }
.hyc-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.hyc-chip {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid var(--border);
  color: var(--text-sub);
  background: var(--bg);
}
.hyc-chip-active { color: #047857; border-color: #a7f3d0; background: #ecfdf5; }
.hyc-chip-normal { color: #1d4ed8; border-color: #bfdbfe; background: #eff6ff; }
.hyc-chip-passive { color: #6b7280; border-color: #e5e7eb; background: #f3f4f6; }
.hyc-actions { margin-top: 10px; }
.hyc-btn {
  font: inherit;
  font-size: 12px;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid var(--accent);
  background: var(--accent);
  color: #fff;
  cursor: pointer;
}
.hyc-btn:hover { opacity: 0.9; }
.hyc-btn-ghost { background: transparent; color: var(--accent); }

/* LINE 告知文（選んだ 1〜3 行 → 300 文字以内） */
.hyc-gen { margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--border); }
.hyc-gen-title { font-weight: 600; margin-bottom: 4px; }
.hyc-gen-status { font-size: 12px; color: var(--text-sub); margin-bottom: 6px; overflow-wrap: anywhere; }
.hyc-gen-status.hyc-gen-status-warn { color: #b45309; font-weight: 600; }
.hyc-gen-out { margin-top: 10px; }
.hyc-gen-text {
  width: 100%;
  box-sizing: border-box;
  font: inherit;
  font-size: 13px;
  line-height: 1.6;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  color: var(--text);
  resize: vertical;
}
.hyc-gen-count { margin-top: 2px; font-size: 12px; text-align: right; color: var(--text-sub); }
.hyc-gen-count.hyc-gen-over { color: #dc2626; font-weight: 600; }
.hyc-gen-note { font-size: 12px; color: var(--text-sub); }
.hyc-gen-note.hyc-gen-note-warn { color: #b45309; }
.hyc-gen-hint {
  margin-top: 8px;
  width: 100%;
  box-sizing: border-box;
  font: inherit;
  font-size: 12px;
  padding: 6px 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  color: var(--text);
}
.hyc-gen-actions { margin-top: 8px; display: flex; flex-wrap: wrap; gap: 8px; }
.hyc-btn:disabled { opacity: 0.5; cursor: not-allowed; }
/* エリア別のまとまり（林さん 2026-10-16「エリア別で2候補」） */
.hyc-group { margin-top: 10px; }
.hyc-group-head { font-weight: 600; font-size: 13px; padding-bottom: 2px; border-bottom: 1px solid var(--border); }
.hyc-group .hyc-list { margin-top: 4px; }
.hyc-group-empty { margin-top: 4px; font-size: 12px; color: var(--text-sub); }
