/* deep-research-operator — RJ Business Solutions brand system */
:root {
  --rj-blue: #2563eb;
  --rj-sky-blue: #0ea5e9;
  --rj-deep-blue: #1e3a8a;
  --rj-navy: #0f172a;
  --rj-white: #ffffff;
  --rj-soft-white: #f8fafc;
  --rj-light-blue: #eff6ff;
  --rj-border-blue: #bfdbfe;
  --rj-muted-blue: #dbeafe;
  --rj-success: #10b981;
  --rj-warning: #f59e0b;
  --rj-danger: #ef4444;
  --rj-dark-text: #0f172a;
  --rj-muted-text: #475569;
  --font-heading: "Space Grotesk", "Poppins", system-ui, sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
}

.phase-pulse { animation: pulse-border 1.6s ease-in-out infinite; }
@keyframes pulse-border {
  0%, 100% { box-shadow: 0 0 0 0 rgba(37, 99, 235, 0.4); }
  50% { box-shadow: 0 0 0 6px rgba(37, 99, 235, 0); }
}

/* Rendered markdown report — RJ dark theme */
.report-body { line-height: 1.65; font-size: 0.925rem; color: #cbd5e1; font-family: var(--font-body); }
.report-body h1, .report-body h2, .report-body h3 {
  font-family: var(--font-heading); color: #fff; font-weight: 700;
  margin-top: 1.6em; margin-bottom: 0.55em;
}
.report-body h1 { font-size: 1.5rem; background: linear-gradient(135deg, #2563eb 0%, #0ea5e9 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.report-body h2 { font-size: 1.2rem; border-bottom: 1px solid #27395e; padding-bottom: 0.3em; }
.report-body h3 { font-size: 1.02rem; color: #7dd3fc; }
.report-body p { margin: 0.6em 0; }
.report-body ul, .report-body ol { margin: 0.6em 0 0.6em 1.4em; }
.report-body ul { list-style: disc; }
.report-body ol { list-style: decimal; }
.report-body li { margin: 0.25em 0; }
.report-body a { color: #60a5fa; text-decoration: underline; word-break: break-all; }
.report-body code { background: #0f172a; border: 1px solid #27395e; border-radius: 4px; padding: 0.1em 0.35em; font-size: 0.85em; }
.report-body pre { background: #0f172a; border: 1px solid #27395e; border-radius: 8px; padding: 0.9em; overflow-x: auto; margin: 0.8em 0; }
.report-body blockquote { border-left: 3px solid #2563eb; padding-left: 0.9em; color: #94a3b8; margin: 0.8em 0; }
.report-body table { width: 100%; border-collapse: collapse; margin: 0.9em 0; font-size: 0.85rem; display: block; overflow-x: auto; }
.report-body th, .report-body td { border: 1px solid #27395e; padding: 0.45em 0.65em; text-align: left; vertical-align: top; }
.report-body th { background: #15223c; color: #e2e8f0; font-weight: 600; white-space: nowrap; }
.report-body tr:nth-child(even) td { background: rgba(21, 34, 60, 0.5); }
.report-body strong { color: #f1f5f9; }
.report-body hr { border-color: #27395e; margin: 1.4em 0; }
