.pur-header { margin-bottom: 16px; }

.pur-cat-card { margin-bottom: 16px; }

.pur-obj-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  flex-wrap: wrap;
}
.pur-obj-row:hover { background: var(--bg); }
.pur-obj-toggle { color: var(--text-muted); width: 12px; }
.pur-obj-name { flex: 1; min-width: 160px; font-size: 13px; font-weight: 500; }
.pur-obj-need, .pur-obj-stock, .pur-obj-tobuy { font-size: 13px; white-space: nowrap; }
.pur-obj-need strong, .pur-obj-tobuy strong { font-size: 16px; }
.pur-obj-tobuy strong { color: var(--brown); }
.pur-obj-stock { color: var(--text-muted); }

.pur-obj-tasks { padding: 0 16px 12px 38px; border-bottom: 1px solid var(--border); }
.pur-task-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.pur-task-table th {
  text-align: left; font-size: 10.5px; font-weight: 600; text-transform: uppercase; letter-spacing: .5px;
  color: var(--text-muted); padding: 6px 8px;
}
.pur-task-table td { padding: 5px 8px; border-top: 1px solid var(--border); }

.pur-summary-card { margin-top: 8px; }
.pur-summary-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.pur-summary-table th {
  text-align: left; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .5px;
  color: var(--text-muted); padding: 10px 16px; border-bottom: 1px solid var(--border);
}
.pur-summary-table td { padding: 9px 16px; border-bottom: 1px solid var(--border); }
.pur-summary-table tr:last-child td { border-bottom: none; }

@media (max-width: 600px) {
  .pur-obj-row { flex-direction: column; align-items: flex-start; gap: 4px; }
  .pur-obj-tasks { padding-left: 16px; overflow-x: auto; }
}
