/* ==========================================================
   運営：同じ商品のまとめ（重複の候補と、まとめたグループ）
   ========================================================== */
.group-panel {
  margin: 1.2rem 0;
  padding: 0.9rem 1.1rem 1.1rem;
  border: 1px solid var(--site-line, #dde5ee);
  border-radius: 10px;
  background: #fff;
}

.group-panel h2 { margin-top: 0; font-size: 1.05rem; }

/* ---------- 重複の候補 ---------- */
.admin-body .dup-table { table-layout: fixed; width: 100%; min-width: 1100px; }

.admin-body .dup-table th,
.admin-body .dup-table td { box-sizing: border-box; vertical-align: top; overflow-wrap: anywhere; }

.admin-body .dup-table th:nth-child(1) { width: 140px; }
.admin-body .dup-table th:nth-child(2) { width: 84px; }
.admin-body .dup-table th:nth-child(3),
.admin-body .dup-table th:nth-child(4) { width: 230px; }
.admin-body .dup-table th:nth-child(6) { width: 170px; }

.dup-score {
  display: inline-block;
  min-width: 2.6rem;
  padding: 1px 8px;
  border-radius: 999px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.dup-score-high { background: #fdecea; color: #b3261e; }
.dup-score-mid  { background: #fff4e5; color: #b26a00; }
.dup-score-low  { background: #eef3f8; color: #46566e; }

.dup-cat {
  display: inline-block;
  margin-bottom: 2px;
  padding: 0 7px;
  border-radius: 999px;
  background: #eef5fb;
  color: #1f3352;
  font-size: 0.72rem;
}

.admin-body .dup-actions { padding: 6px 8px; }
.admin-body .dup-actions form { display: block; margin: 0; }

.admin-body .dup-actions .btn {
  display: block;
  width: 100%;
  margin: 0 0 4px;
  padding: 5px 6px;
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
  white-space: normal;
}

/* ---------- まとめたグループ ---------- */
.group-card {
  margin: 0 0 12px;
  padding: 12px 14px;
  border: 1px solid #cfe3f3;
  border-left: 4px solid #0a86c9;
  border-radius: 10px;
  background: #f7fbff;
}

.group-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.admin-body .group-card-head form { margin: 0; }

.group-services { list-style: none; margin: 0 0 10px; padding: 0; }

.group-services li {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 5px 0;
  border-top: 1px solid #e0ecf6;
}

.admin-body .group-services form { margin: 0; }

.group-rename { display: flex; gap: 8px; align-items: center; }
.group-rename .wide-input { max-width: 26rem; }

/* 掲載データの確認の一覧に出す「同じ商品 n件」 */
.badge-group {
  display: inline-block;
  margin-left: 4px;
  padding: 0 7px;
  border-radius: 999px;
  background: #e8f1fb;
  color: #1f4e78;
  font-size: 0.72rem;
  font-weight: 700;
  white-space: nowrap;
}

/* 候補の行に出す、基本料金と「料金が違います」 */
.dup-prices { margin: 4px 0 0; padding-left: 1.1em; font-size: 0.78rem; color: #46566e; }
.dup-prices li { margin-bottom: 1px; }

.dup-price-warn {
  margin: 0 0 4px;
  padding: 3px 6px;
  border-radius: 6px;
  background: #fff4e5;
  color: #b26a00;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.4;
}
