/* Global site styles */
:root {
  --tf-text: #1f2937;
  --tf-bg: #ffffff;
  --tf-border: #e5e7eb;
  --tf-accent: #6366f1; /* indigo-500 */
  --tf-accent-2: #ec4899; /* pink-500 */
}

.tf-dark {
  --tf-text: #e5e7eb;
  --tf-bg: #0b1220;
  --tf-border: #1f2937;
}

.tf-body {
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color: var(--tf-text);
  background-color: var(--tf-bg);
}

/* Navbar */
.navbar .navbar-brand { letter-spacing: 0.2px; }

/* Hero */
header.bg-light {
  background: linear-gradient(180deg, rgba(99,102,241,0.08), rgba(236,72,153,0.06));
}
.tf-dark header.bg-light { background: linear-gradient(180deg, rgba(99,102,241,0.12), rgba(236,72,153,0.10)); }

.btn-primary { background-color: var(--tf-accent); border-color: var(--tf-accent); }
.btn-primary:hover { background-color: #4f46e5; border-color: #4f46e5; }
.btn-outline-warning { color: #f59e0b; border-color: #f59e0b; }

/* Cards */
.card { border-radius: 12px; border-color: var(--tf-border); transition: box-shadow .2s ease, transform .2s ease; }
.card:hover { box-shadow: 0 6px 20px rgba(0,0,0,.08); transform: translateY(-1px); }
.card .card-title { font-weight: 600; }

/* Dark mode overrides */
.tf-dark .bg-white { background-color: rgba(255,255,255,0.06) !important; }
.tf-dark .bg-light { background-color: rgba(255,255,255,0.03) !important; }
.tf-dark .card { background-color: rgba(255,255,255,0.04); }
.tf-dark .card, .tf-dark .card .card-body, .tf-dark .card-title, .tf-dark .card-text { color: var(--tf-text) !important; }
.tf-dark .card:hover { box-shadow: 0 6px 24px rgba(0,0,0,.35); }
.tf-dark .border { border-color: var(--tf-border) !important; }
.tf-dark .text-muted { color: #9ca3af !important; }

/* Tables (pricing matrix) */
.tf-dark .table { 
  --bs-table-color: var(--tf-text);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--tf-border);
}

/* Lists inside cards (e.g., AI analysis) */
.tf-dark .list-group-item { 
  background-color: rgba(255,255,255,0.03);
  color: var(--tf-text);
  border-color: var(--tf-border);
}

pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

/* Footer */
footer { background-color: rgba(0,0,0,0.01); }
.tf-dark footer { background-color: rgba(255,255,255,0.02); }
