@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&family=Syne:wght@700;800&display=swap'); @tailwind base; @tailwind components; @tailwind utilities; :root { --bg-primary: #080b14; --bg-secondary: #101522; --bg-tertiary: #151c2c; --surface: rgba(255, 255, 255, 0.045); --surface-strong: rgba(255, 255, 255, 0.075); --border: rgba(255, 255, 255, 0.09); --border-active: rgba(56, 189, 248, 0.55); --text-primary: #f1f5f9; --text-secondary: #a7b3c7; --text-muted: #667085; --accent-blue: #3b82f6; --accent-cyan: #06b6d4; --accent-green: #10b981; --accent-amber: #f59e0b; --accent-red: #ef4444; --accent-violet: #8b5cf6; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; background: linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px), linear-gradient(0deg, rgba(255, 255, 255, 0.014) 1px, transparent 1px), var(--bg-primary); background-size: 44px 44px; color: var(--text-primary); font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; overflow-x: hidden; } button, input, select, textarea { font: inherit; } button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent-cyan); outline-offset: 2px; } .font-display { font-family: Syne, Inter, sans-serif; } .font-mono { font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace; } .path-text { min-width: 0; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; line-break: anywhere; } .path-chip { min-width: 0; max-width: 100%; overflow: hidden; } .glass { background: var(--surface); border: 1px solid var(--border); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); } .glass:hover { background: var(--surface-strong); } .gradient-text { background: linear-gradient(110deg, #38bdf8, #34d399 45%, #fbbf24 80%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; } .enterprise-panel { background: linear-gradient(180deg, rgba(16, 21, 34, 0.98), rgba(10, 15, 26, 0.98)); border: 1px solid var(--border); } .pulse-dot { animation: pulse-dot 1.45s ease-in-out infinite; } @keyframes pulse-dot { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.45; transform: scale(0.75); } } @keyframes scan-sweep { 0% { transform: translateY(-100%); opacity: 0; } 15%, 80% { opacity: 1; } 100% { transform: translateY(100%); opacity: 0; } } .scan-sweep { animation: scan-sweep 2.6s ease-in-out infinite; } ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(148, 163, 184, 0.35); border-radius: 999px; } .react-flow__controls { box-shadow: none !important; } .react-flow__controls-button { background: #111827 !important; border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important; color: #dbeafe !important; } .react-flow__attribution { background: rgba(15, 23, 42, 0.65) !important; color: #94a3b8 !important; } .markdown-body h1, .markdown-body h2, .markdown-body h3 { color: #f8fafc; margin-top: 1.2rem; margin-bottom: 0.55rem; } .markdown-body p, .markdown-body li { color: #cbd5e1; line-height: 1.7; overflow-wrap: anywhere; } .markdown-body code { background: rgba(15, 23, 42, 0.85); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 6px; padding: 0.1rem 0.35rem; white-space: pre-wrap; overflow-wrap: anywhere; } .markdown-body pre { max-width: 100%; overflow-x: auto; white-space: pre-wrap; }