/* LeadGen-spezifische Overrides + Komponenten */

.empty-placeholder {
  margin-top: 40px; padding: 32px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px; text-align: center;
}
.empty-placeholder h2 { margin: 0 0 8px; font-weight: 500; }
.empty-placeholder p { margin: 8px 0; }

.almas-loading { padding: 24px; text-align: center; color: var(--text-secondary, #888); }
.loading-spinner {
  display: inline-block; width: 28px; height: 28px;
  border: 3px solid rgba(255,255,255,0.1);
  border-top-color: #0A84FF;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-bottom: 12px;
}
@keyframes spin { to { transform: rotate(360deg); } }

.callout-danger {
  margin: 16px 0; padding: 12px;
  background: rgba(255, 59, 48, 0.08);
  border: 1px solid #FF453A;
  border-radius: 8px;
  color: #FF6B61;
}

.search-form-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 28px;
  margin-bottom: 24px;
}
.search-form-card h2 { margin: 0 0 6px; font-weight: 500; font-size: 1.25rem; }
.search-form-card .text-secondary { margin: 0 0 22px; }

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 14px;
}
@media (max-width: 700px) { .form-grid { grid-template-columns: 1fr; } }

.form-field label {
  display: block;
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.05em;
  color: #8a8a8a;
  margin-bottom: 6px;
  font-weight: 600;
}
.form-field .lbl-hint { color: #666; font-weight: 400; text-transform: none; letter-spacing: 0; font-size: 0.78rem; margin-left: 6px; }
.form-field input.almas-input { width: 100%; font-size: 1.02rem; padding: 12px 14px; }

.form-opts { margin: 8px 0 18px; }
.opt-toggle { display: inline-flex; align-items: center; gap: 8px; font-size: 0.92rem; cursor: pointer; color: #ccc; }
.opt-toggle input[type="checkbox"] { width: 16px; height: 16px; }

.form-actions { display: flex; gap: 12px; }
.almas-btn-lg { padding: 12px 26px; font-size: 1rem; }

.results-header {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; flex-wrap: wrap;
  padding: 14px 18px;
  background: rgba(48, 209, 88, 0.06);
  border: 1px solid rgba(48, 209, 88, 0.18);
  border-radius: 10px;
  margin-bottom: 14px;
}
.results-header code {
  background: rgba(255,255,255,0.08);
  padding: 1px 6px; border-radius: 4px;
  font-size: 0.86em;
}
.results-actions { display: flex; gap: 8px; }

.results-table th, .results-table td { vertical-align: top; }
.results-table td a { color: #0A84FF; text-decoration: none; }
.results-table td a:hover { text-decoration: underline; }
.results-table .text-secondary { color: #888; font-size: 0.82em; }

.amount { text-align: right; white-space: nowrap; }
