#root { width: 100%; height: 100vh; margin: 0; padding: 0; } /* Improve white mode styling */ :root { /* Better contrast for light mode */ --background: 250 250 250; --foreground: 15 23 42; --card: 255 255 255; --card-foreground: 15 23 42; --popover: 255 255 255; --popover-foreground: 15 23 42; --primary-foreground: 0 0 0; --secondary: 241 245 249; --secondary-foreground: 71 85 105; --muted: 241 245 249; --muted-foreground: 100 116 139; --accent: 241 245 249; --accent-foreground: 71 85 105; --destructive: 0 84.2% 60.2%; --destructive-foreground: 0 0% 98%; --border: 226 232 240; --input: 226 232 240; --ring: 217 70.2% 91.2%; --radius: 0.5rem; } /* Dark mode overrides */ [data-kb-theme="dark"] { --background: 26 26 26; --foreground: 250 250 250; --card: 32 32 32; --card-foreground: 250 250 250; --popover: 32 32 32; --popover-foreground: 250 250 250; --primary-foreground: 250 250 250; --secondary: 39 39 42; --secondary-foreground: 250 250 250; --muted: 39 39 42; --muted-foreground: 163 163 163; --accent: 39 39 42; --accent-foreground: 250 250 250; --destructive: 0 62.8% 30.6%; --destructive-foreground: 250 250 250; --border: 39 39 42; --input: 39 39 42; --ring: 217 70.2% 91.2%; } .logo { height: 6em; padding: 1.5em; will-change: filter; transition: filter 300ms; } .logo:hover { filter: drop-shadow(0 0 2em hsl(var(--primary) / 0.3)); } .logo.solid:hover { filter: drop-shadow(0 0 2em hsl(var(--primary) / 0.3)); } .card { padding: 2em; } .read-the-docs { color: hsl(var(--muted-foreground)); } /* Better light mode text contrast */ [data-kb-theme="light"] { color-scheme: light; } [data-kb-theme="dark"] { color-scheme: dark; } /* Improve button styling in light mode */ [data-kb-theme="light"] button { font-weight: 500; } /* Improve input styling in light mode */ [data-kb-theme="light"] input, [data-kb-theme="light"] textarea, [data-kb-theme="light"] select { font-weight: 400; } /* Better border visibility in light mode */ [data-kb-theme="light"] .border { border-color: hsl(var(--border)); } /* Enhanced bookmark preview styles */ .page-preview { max-width: 100%; font-family: system-ui, -apple-system, sans-serif; line-height: 1.6; color: hsl(var(--foreground)); } .page-preview .preview-header { border-bottom: 1px solid hsl(var(--border)); padding-bottom: 1rem; margin-bottom: 1rem; display: flex; align-items: center; gap: 0.75rem; } .page-preview .favicon { width: 24px; height: 24px; border-radius: 4px; } .page-preview .preview-header h1 { margin: 0; font-size: 1.5rem; font-weight: 600; color: hsl(var(--foreground)); } .page-preview .preview-url { font-size: 0.875rem; color: hsl(var(--muted-foreground)); font-family: monospace; word-break: break-all; } .page-preview .preview-content { display: flex; flex-direction: column; gap: 1rem; } .page-preview .preview-meta { background: hsl(var(--muted)); padding: 1rem; border-radius: 0.5rem; margin: 1rem 0; } .page-preview .preview-meta p { margin: 0.25rem 0; font-size: 0.875rem; } .page-preview .preview-meta strong { color: hsl(var(--foreground)); font-weight: 600; } .page-preview .preview-actions { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid hsl(var(--border)); } .page-preview .visit-site { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1rem; background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); text-decoration: none; border-radius: 0.375rem; font-weight: 500; transition: all 0.2s; } .page-preview .visit-site:hover { opacity: 0.9; transform: translateY(-1px); } .page-preview.error { text-align: center; padding: 2rem; } .page-preview.error .error-message { max-width: 400px; margin: 0 auto; } .page-preview.error .error-message h3 { color: hsl(var(--destructive)); margin-bottom: 1rem; } .page-preview.error .error-message p { color: hsl(var(--muted-foreground)); margin-bottom: 0.5rem; }