SPB Git

spb/uqo-chat

Public
2.9 KB · 59 lines css
1@import 'katex/dist/katex.min.css';2@tailwind base;3@tailwind components;4@tailwind utilities;56:root {7  --font-scale: 1;8  --safe-bottom: env(safe-area-inset-bottom, 0px);9  --safe-top: env(safe-area-inset-top, 0px);10}1112html, body, #root { height: 100%; }13body {14  @apply bg-neutral-bg text-neutral-text font-sans antialiased;15  font-size: calc(16px * var(--font-scale));16  overscroll-behavior-y: none;17}18input, textarea, select, button { font: inherit; }19/* Anti-zoom iOS: never below 16 px in inputs */20input, textarea { font-size: max(16px, 1em); }2122*:focus-visible { outline: 2px solid theme('colors.uqo.blue'); outline-offset: 2px; border-radius: 4px; }2324.scroll-thin { scrollbar-width: thin; scrollbar-color: #C5D0DB transparent; }25.scroll-thin::-webkit-scrollbar { width: 6px; height: 6px; }26.scroll-thin::-webkit-scrollbar-thumb { background: #C5D0DB; border-radius: 3px; }2728/* Markdown (prose-like, mobile first) */29.md { line-height: 1.6; word-wrap: break-word; }30.md > * + * { margin-top: 0.7em; }31.md h1, .md h2, .md h3, .md h4 { @apply font-semibold text-uqo-blue-dark; line-height: 1.3; margin-top: 1.1em; }32.md h1 { font-size: 1.35em; } .md h2 { font-size: 1.2em; } .md h3 { font-size: 1.08em; } .md h4 { font-size: 1em; }33.md p { margin: 0; }34.md ul { list-style: disc; padding-left: 1.4em; } .md ol { list-style: decimal; padding-left: 1.4em; }35.md li + li { margin-top: 0.25em; }36.md a { @apply text-uqo-blue underline underline-offset-2; }37.md blockquote { @apply border-l-4 border-uqo-blue-light pl-3 text-neutral-muted; }38.md code:not(pre code) { @apply font-mono text-[0.9em] bg-neutral-surface px-1 py-0.5 rounded; }39.md pre { @apply font-mono text-[0.86em] rounded-lg overflow-x-auto; }40.md table { display: block; overflow-x: auto; max-width: 100%; border-collapse: collapse; font-size: 0.93em; }41.md thead th { @apply bg-uqo-blue-light text-uqo-blue-dark font-semibold text-left; padding: 6px 10px; }42.md td { padding: 6px 10px; border-top: 1px solid theme('colors.neutral.line'); white-space: nowrap; }43.md hr { @apply border-neutral-line my-3; }44.md .katex-display { overflow-x: auto; overflow-y: hidden; padding: 4px 0; margin: 0.5em 0; }45.md .katex { font-size: 1.05em; }46.md img { max-width: 100%; border-radius: 8px; }4748.shiki { padding: 12px 14px; margin: 0; background: #0f1b2a !important; color: #e6edf3; }49.shiki code { counter-reset: line; }5051.streaming-cursor::after { content: '▍'; @apply text-uqo-blue; animation: blink 1s steps(2) infinite; margin-left: 1px; }52@keyframes blink { 50% { opacity: 0; } }5354.progress-bar { position: relative; height: 2px; overflow: hidden; background: theme('colors.uqo.blue-light'); }55.progress-bar::after { content: ''; position: absolute; left: -40%; width: 40%; height: 100%; background: theme('colors.uqo.blue'); animation: slide 1.2s ease-in-out infinite; }56@keyframes slide { to { left: 100%; } }5758.skeleton { @apply bg-neutral-surface rounded animate-pulse; }59
Files · cd08d441f7c277e8fedd6f3d3be82f02b44553ba
Menu

Theme