rowboat/apps/rowboat/app/globals.css
2025-07-13 16:45:14 +05:30

174 lines
4.2 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap');
@import 'tailwindcss';
@import './styles/quill-mentions.css';
@plugin './hero.ts';
@source '../node_modules/@heroui/theme/dist/**/*.{js,ts,jsx,tsx}';
@custom-variant dark (&:is(.dark *));
@reference 'tailwindcss';
@layer utilities {
.text-balance {
text-wrap: balance;
}
.custom-scrollbar {
scrollbar-width: thin;
scrollbar-color: rgba(156, 163, 175, 0.3) transparent;
}
.custom-scrollbar::-webkit-scrollbar {
width: 4px;
}
.custom-scrollbar::-webkit-scrollbar-track {
background: transparent;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
background-color: rgba(156, 163, 175, 0.3);
border-radius: 4px;
border: none;
}
/* Dark mode */
.dark .custom-scrollbar {
scrollbar-color: rgba(63, 63, 70, 0.4) transparent;
}
.dark .custom-scrollbar::-webkit-scrollbar-thumb {
background-color: rgba(63, 63, 70, 0.4);
border: none;
}
}
html, body {
height: 100vh;
}
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 0 0% 3.9%;
--card: 0 0% 100%;
--card-foreground: 0 0% 3.9%;
--popover: 0 0% 100%;
--popover-foreground: 0 0% 3.9%;
--primary: 0 0% 9%;
--primary-foreground: 0 0% 98%;
--secondary: 0 0% 96.1%;
--secondary-foreground: 0 0% 9%;
--muted: 0 0% 96.1%;
--muted-foreground: 0 0% 45.1%;
--accent: 0 0% 96.1%;
--accent-foreground: 0 0% 9%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 89.8%;
--input: 0 0% 89.8%;
--ring: 0 0% 3.9%;
--chart-1: 12 76% 61%;
--chart-2: 173 58% 39%;
--chart-3: 197 37% 24%;
--chart-4: 43 74% 66%;
--chart-5: 27 87% 67%;
--radius: 0.5rem;
}
.dark {
--background: 0 0% 3.9%;
--foreground: 0 0% 98%;
--card: 0 0% 3.9%;
--card-foreground: 0 0% 98%;
--popover: 0 0% 3.9%;
--popover-foreground: 0 0% 98%;
--primary: 0 0% 98%;
--primary-foreground: 0 0% 9%;
--secondary: 0 0% 14.9%;
--secondary-foreground: 0 0% 98%;
--muted: 0 0% 14.9%;
--muted-foreground: 0 0% 63.9%;
--accent: 0 0% 14.9%;
--accent-foreground: 0 0% 98%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 0 0% 98%;
--border: 0 0% 14.9%;
--input: 0 0% 14.9%;
--ring: 0 0% 83.1%;
--chart-1: 220 70% 50%;
--chart-2: 160 60% 45%;
--chart-3: 30 80% 55%;
--chart-4: 280 65% 60%;
--chart-5: 340 75% 55%;
}
/* Define a card class that will be used for all card-like components */
.card {
@apply rounded-xl border p-4
border-[#E5E7EB] dark:border-[#2E2E30]
bg-white dark:bg-[#1C1C1E]
shadow-[0_2px_8px_rgba(0,0,0,0.04)]
transition-all duration-200 ease-in-out;
}
/* Update input styles */
input, textarea, select {
@apply rounded-lg border-[#E5E7EB] dark:border-[#2E2E30]
bg-[#F3F4F6] dark:bg-[#2A2A2D]
focus:ring-2 focus:ring-indigo-500/50
transition-all duration-200;
}
}
html {
font-family: 'Inter', system-ui, -apple-system, sans-serif;
}
body {
background: var(--background);
color: var(--foreground);
}
/* Playground chat custom scrollbar: hide track background and border */
.playground-scrollbar::-webkit-scrollbar {
width: 4px;
background: transparent !important;
}
.playground-scrollbar::-webkit-scrollbar-track {
background: transparent !important;
border: none !important;
box-shadow: none !important;
}
.playground-scrollbar::-webkit-scrollbar-thumb {
background: #9ca3af;
border-radius: 4px;
}
.playground-scrollbar {
scrollbar-width: thin;
scrollbar-color: #9ca3af transparent;
}
@keyframes float {
0% { transform: translateX(0); }
50% { transform: translateX(24px); }
100% { transform: translateX(0); }
}
@keyframes pulse-mascot {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.05); }
}
/* Combine float (side-to-side) and pulse (scale) */
.animate-float {
animation: float 5s ease-in-out infinite, pulse-mascot 4s infinite;
}
/* Feedback modal textarea overrides */
.feedback-modal textarea,
.feedback-modal textarea:focus {
font-size: 0.75rem !important; /* Tailwind's text-xs */
box-shadow: none !important;
outline: none !important;
border-color: #d1d5db !important; /* Tailwind's gray-300 */
}