@import "tailwindcss"; :root { --primary: #B7A6FB; --bg-dark: #020105; --bg-card: rgba(7, 3, 18, 0.5); --glass-border: rgba(183, 166, 251, 0.15); } * { box-sizing: border-box; } body { background-color: #020105; background-image: radial-gradient(at 0% 0%, rgba(183, 166, 251, 0.08) 0px, transparent 50%), radial-gradient(at 100% 0%, rgba(100, 50, 200, 0.08) 0px, transparent 50%); color: #cbd5e1; font-family: 'Roboto', sans-serif; -webkit-font-smoothing: antialiased; } /* Scrollbar */ ::-webkit-scrollbar { width: 5px; height: 5px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(183, 166, 251, 0.2); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: rgba(183, 166, 251, 0.4); } /* Glass card */ .glass-card { background: rgba(7, 3, 18, 0.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.08); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5), inset 0 0 0 1px rgba(255,255,255,0.02); position: relative; } .glass-card::before { content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 1px; background: linear-gradient(180deg, rgba(255,255,255,0.08), transparent 60%); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; } .glass-card:hover { border-color: rgba(183, 166, 251, 0.25); box-shadow: 0 0 20px rgba(183, 166, 251, 0.08); } /* Glow border */ .glow-border { position: relative; border-radius: 12px; } .glow-border::before { content: ""; position: absolute; inset: 0; border-radius: 12px; padding: 1px; background: linear-gradient(135deg, rgba(183, 166, 251, 0.4), rgba(183, 166, 251, 0.05)); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; } /* Text glow */ .text-glow { text-shadow: 0 0 20px rgba(183, 166, 251, 0.5); } /* Data stream line */ .data-stream-line { background: linear-gradient(180deg, rgba(183, 166, 251, 0) 0%, rgba(183, 166, 251, 0.3) 20%, rgba(183, 166, 251, 0.3) 80%, rgba(183, 166, 251, 0) 100% ); width: 1px; } /* Subtle grid overlay */ .bg-grid-subtle { background-image: linear-gradient(to right, rgba(255,255,255,0.02) 1px, transparent 1px), linear-gradient(to bottom, rgba(255,255,255,0.02) 1px, transparent 1px); background-size: 40px 40px; } /* Code snippet */ .code-snippet { font-family: 'JetBrains Mono', monospace; background: rgba(0, 0, 0, 0.3); border: 1px solid rgba(255,255,255,0.05); border-radius: 6px; } /* Shimmer */ @keyframes shimmer { 0% { transform: translateX(-100%); } 100% { transform: translateX(200%); } } /* Bar chart */ .bar-chart { display: flex; align-items: flex-end; gap: 2px; height: 20px; } .bar { width: 3px; background: #B7A6FB; opacity: 0.4; border-radius: 1px; } .bar.active { opacity: 1; box-shadow: 0 0 5px #B7A6FB; }