/* ============================================================
   Villa Plumbing Field Portal — Bid Opportunity Grouping styles
   Build marker: Bid Opportunity Grouping May 11

   Visual language matches the existing Bid Tracker palette.
   Strictly additive — no overrides on shared selectors.
   ============================================================ */

.bog-dup-panel{
  border:1px solid #f6c46b;
  background:#fff7e6;
  border-radius:12px;
  padding:14px 16px;
  margin:10px 0;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.bog-dup-panel h4{ margin:0 0 4px 0; color:#7a4500; font-size:16px; }
.bog-dup-panel .bog-sub{ color:#4a6b65; font-size:12px; margin:0 0 6px 0; }
.bog-dup-panel .bog-tag{
  display:inline-block;
  font-size:11px;
  padding:2px 8px;
  background:#fde9b3;
  color:#7a4500;
  border-radius:999px;
  margin:0 0 8px 0;
}
.bog-dup-table{
  width:100%;
  border-collapse:collapse;
  margin:8px 0;
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  font-size:13px;
}
.bog-dup-table th, .bog-dup-table td{
  text-align:left;
  padding:6px 10px;
  border-bottom:1px solid #f0e3c4;
}
.bog-dup-table th{
  background:#fef0d2;
  font-weight:600;
  color:#7a4500;
}
.bog-score{
  display:inline-block;
  padding:2px 8px;
  background:#e7f4ec;
  color:#1b5b3a;
  border-radius:999px;
  font-size:11px;
  font-weight:600;
}
.bog-dup-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.bog-dup-actions .btn{
  min-height:44px;  /* mobile-safe tap target */
  padding:8px 14px;
}
.bog-dup-note{
  margin-top:10px;
  font-size:12px;
  color:#4a6b65;
  border-top:1px dashed #f0e3c4;
  padding-top:8px;
}

/* ---- Inline badges on bid rows ---- */
.bog-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:8px;
  padding:2px 8px;
  background:#e6f0ff;
  color:#0d3a7a;
  border:1px solid #b9d1ff;
  border-radius:999px;
  font-size:11px;
  font-weight:600;
  vertical-align:middle;
}
.bog-badge .bog-badge-btn{
  background:transparent;
  border:0;
  color:#0d3a7a;
  cursor:pointer;
  font-weight:700;
  font-size:11px;
  padding:0 4px;
  text-decoration:underline;
  min-height:24px;
}
.bog-badge-warn{
  background:#fde9e9;
  color:#8a1f1f;
  border-color:#f3b6b6;
}
.bog-badge-warn .bog-badge-btn{ color:#8a1f1f; }

/* ---- Grouped view ---- */
.bog-grouped{
  background:#fff;
  border:1px solid #d9e7e3;
  border-radius:12px;
  padding:14px 16px;
  margin:8px 0;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.bog-grouped-head h3{ margin:0; color:#0d3a55; }
.bog-grouped-head h4{ margin:4px 0 6px 0; color:#1a4f6e; font-weight:600; }
.bog-grouped .bog-sub{ color:#4a6b65; font-size:12px; margin:2px 0; }
.bog-warn{
  border:1px solid #f3b6b6;
  background:#fde9e9;
  color:#8a1f1f;
  border-radius:8px;
  padding:8px 12px;
  margin:8px 0;
  font-size:13px;
  font-weight:600;
}
.bog-grouped-table{
  width:100%;
  border-collapse:collapse;
  margin:8px 0;
  font-size:13px;
}
.bog-grouped-table th, .bog-grouped-table td{
  text-align:left;
  padding:8px 10px;
  border-bottom:1px solid #e0eee9;
  vertical-align:top;
}
.bog-grouped-table th{
  background:#eef6f3;
  color:#0d3a55;
  font-weight:600;
}
.bog-grouped-table .bog-actions .btn{
  min-height:36px;
  padding:6px 10px;
}
.bog-defer-note{
  font-size:12px;
  color:#4a6b65;
  margin:10px 0 4px 0;
  border-top:1px dashed #d9e7e3;
  padding-top:8px;
  font-style:italic;
}
.bog-grouped-actions{
  display:flex;
  gap:8px;
  margin-top:8px;
}
.bog-grouped-actions .btn{
  min-height:44px;
  padding:8px 14px;
}

/* ---- Mobile-safe ---- */
@media (max-width: 720px){
  .bog-dup-panel{ padding:12px 12px; }
  .bog-dup-actions{ flex-direction:column; }
  .bog-dup-actions .btn{ width:100%; }
  .bog-grouped{ padding:12px 12px; }
  .bog-grouped-table th, .bog-grouped-table td{ font-size:12px; padding:6px 8px; }
  .bog-badge{ font-size:10px; padding:2px 6px; }
}

/* ---- Print ---- */
@media print{
  .bog-grouped-actions, .bog-dup-actions{ display:none; }
  .bog-grouped, .bog-dup-panel{ box-shadow:none; }
}
