.pol-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
  gap: 14px;
}
.pol-grid-classes { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }

.pol-card {
  border: 1px solid var(--lab-edge-soft);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(40, 24, 47, 0.5), rgba(15, 8, 19, 0.55));
  overflow: hidden;
}
.pol-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 15px;
  border-bottom: 1px solid var(--lab-edge-soft);
}
.pol-card-t { font-size: 0.98rem; font-weight: 700; color: var(--lab-gold-bright); }
.pol-card-body { padding: 8px 15px 13px; }

.pol-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 0;
}
.pol-row + .pol-row { border-top: 1px solid rgba(244, 207, 139, 0.07); }
.pol-field { font-size: 0.83rem; color: var(--lab-gold); }
.pol-ctl { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.pol-ctl .lab-select { min-width: 132px; font-size: 0.8rem; padding-top: 6px; padding-bottom: 6px; }
.pol-dot {
  width: 9px; height: 9px;
  border-radius: 50%;
  flex: 0 0 auto;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4);
}
.pol-dot.is-good { background: var(--lab-good); }
.pol-dot.is-warn { background: var(--lab-warn); }
.pol-dot.is-bad { background: var(--lab-bad); }
