@tailwind base; @tailwind components; @tailwind utilities; @layer base { * { @apply border-zinc-200/60; } body { @apply bg-white text-zinc-900 antialiased; } /* Modern scrollbar */ ::-webkit-scrollbar { width: 5px; height: 5px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(161, 161, 170, 0.35); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: rgba(161, 161, 170, 0.6); } /* Firefox scrollbar */ * { scrollbar-width: thin; scrollbar-color: rgba(161, 161, 170, 0.35) transparent; } } @layer utilities { /* Skeleton shimmer animation */ .skeleton { @apply bg-zinc-100 rounded-md animate-pulse; } } /* Tool card progress - liquid fill animation */ @keyframes liquid-fill { 0% { width: 5%; opacity: 0.5; } 20% { width: 30%; opacity: 0.9; } 40% { width: 55%; opacity: 1; } 60% { width: 75%; opacity: 0.95; } 80% { width: 92%; opacity: 0.85; } 90% { width: 100%; opacity: 0.7; } 100% { width: 5%; opacity: 0.5; } } @keyframes liquid-glow { 0%, 100% { box-shadow: 0 0 4px rgba(99, 102, 241, 0.3); } 50% { box-shadow: 0 0 12px rgba(99, 102, 241, 0.5); } } .tool-shimmer-bar { animation: liquid-fill 2.4s cubic-bezier(0.4, 0, 0.2, 1) infinite; border-radius: 9999px; background: linear-gradient(90deg, rgba(99, 102, 241, 0.8), rgba(139, 92, 246, 0.9), rgba(99, 102, 241, 0.7)); background-size: 200% 100%; } .tool-progress-track { animation: liquid-glow 2.4s ease-in-out infinite; } /* GitHub-style Markdown - light theme */ @layer components { .markdown-body { color-scheme: light; color: #1f2328; } .markdown-body h1 { font-size: 1.5em; font-weight: 600; margin: 0.67em 0; padding-bottom: 0.3em; border-bottom: 1px solid #d0d7de; } .markdown-body h2 { font-size: 1.25em; font-weight: 600; margin: 0.83em 0; padding-bottom: 0.3em; border-bottom: 1px solid #d0d7de; } .markdown-body h3 { font-size: 1.1em; font-weight: 600; margin: 1em 0 0.25em; } .markdown-body h4 { font-size: 1em; font-weight: 600; margin: 1em 0 0.25em; } .markdown-body p { margin: 0 0 0.75em; } .markdown-body p:last-child { margin-bottom: 0; } .markdown-body ul, .markdown-body ol { padding-left: 1.5em; margin: 0 0 0.75em; } .markdown-body li { margin: 0.15em 0; } .markdown-body li > p { margin: 0; } .markdown-body ul { list-style-type: disc; } .markdown-body ol { list-style-type: decimal; } .markdown-body blockquote { margin: 0 0 0.75em; padding: 0 1em; color: #656d76; border-left: 3px solid #d0d7de; } .markdown-body code { background: rgba(175,184,193,0.2); padding: 0.15em 0.4em; border-radius: 4px; font-size: 0.875em; font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace; } .markdown-body pre { background: #f6f8fa; border: 1px solid #d0d7de; border-radius: 6px; padding: 12px; margin: 0 0 0.75em; overflow-x: auto; } .markdown-body pre code { background: none; padding: 0; font-size: 0.8125em; line-height: 1.5; color: #1f2328; } .markdown-body hr { border: 0; height: 1px; background: #d0d7de; margin: 1em 0; } .markdown-body a { color: #0969da; text-decoration: none; } .markdown-body a:hover { text-decoration: underline; } .markdown-body strong { font-weight: 600; } .markdown-body table { border-collapse: collapse; margin: 0 0 0.75em; width: 100%; } .markdown-body th, .markdown-body td { border: 1px solid #d0d7de; padding: 6px 13px; text-align: left; } .markdown-body th { font-weight: 600; background: #f6f8fa; } .markdown-body img { max-width: 100%; border-radius: 6px; } }