/* Opportunity Radar additions on top of the shared AME Emerge styles.css
   design tokens (colors, type, buttons, cards, badges already defined there). */

.filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:20px;}
.filter-field{display:flex;flex-direction:column;gap:6px;min-width:150px;}
.filter-field label{font-size:12px;font-weight:600;color:var(--text-dim);}
.filter-field input,.filter-field select{min-height:40px;padding:8px 12px;font-size:14px;}
.filter-check{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text-dim);min-height:40px;}
.filter-check input{width:16px;height:16px;accent-color:var(--accent);}

.listing-grid{display:flex;flex-direction:column;gap:14px;}
.listing-card{padding:20px 22px;}
.listing-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;}
.listing-head h3{font-size:19px;}
.listing-org{color:var(--text-dim);font-size:13.5px;margin-top:2px;}
.listing-meta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;}
.listing-desc{color:var(--text-dim);font-size:14px;line-height:1.6;margin-top:6px;}
.listing-audience{font-size:13px;color:var(--text-faint);margin-top:4px;font-style:italic;}
.listing-fields{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;font-size:13.5px;}
.listing-fields dt{color:var(--text-faint);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-mono);}
.listing-fields dd{margin:2px 0 0;color:var(--text);}
.listing-actions{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;}
.placeholder-value{color:var(--text-faint);font-style:italic;}

.empty-state{padding:40px 24px;text-align:center;color:var(--text-dim);}
.empty-state h3{margin-bottom:8px;color:var(--text);}
.empty-state .btn-row{display:flex;gap:10px;justify-content:center;margin-top:16px;flex-wrap:wrap;}

.explain-note{margin-bottom:20px;}

table.admin-table{width:100%;border-collapse:collapse;font-size:13.5px;}
table.admin-table th{text-align:left;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);padding:8px 10px;border-bottom:1px solid var(--border-strong);}
table.admin-table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:top;}
table.admin-table tr:hover td{background:var(--bg-2);}
.row-actions{display:flex;gap:6px;flex-wrap:wrap;}

.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.form-grid .full{grid-column:1/-1;}
fieldset.form-section{border:1px solid var(--border);border-radius:var(--radius-m);padding:18px 20px;margin:0 0 18px;}
fieldset.form-section legend{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);padding:0 6px;}

.csv-drop{border:2px dashed var(--border-strong);border-radius:var(--radius-m);padding:28px;text-align:center;color:var(--text-dim);}
.csv-drop input[type=file]{margin-top:12px;}

.admin-gate{max-width:520px;margin:80px auto;text-align:center;}

pre.digest-output{white-space:pre-wrap;background:var(--bg-2);border:1px solid var(--border-strong);border-radius:var(--radius-m);padding:18px;font-family:var(--font-mono);font-size:13px;line-height:1.6;max-height:60vh;overflow:auto;}

@media (max-width:640px){
  .filter-bar{flex-direction:column;align-items:stretch;}
  table.admin-table{display:block;overflow-x:auto;}
}
