Files
readlater/src/app/globals.css
Gemini Agent 27963af055 Initial commit: ReadLater v1.0
- Save articles via URL or bookmarklet
- Clean dark reader with customizable fonts/sizing
- Text-to-speech with browser + Kokoro support
- Speed control up to 3x
- Favorites and archive
- SQLite database with Drizzle ORM
- Docker deployment ready

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 07:35:07 +00:00

157 lines
2.7 KiB
CSS

@import "tailwindcss";
:root {
--background: #000000;
--foreground: #ffffff;
--muted: #888888;
--border: #333333;
--accent: #3b82f6;
--surface: #111111;
}
[data-theme="light"] {
--background: #ffffff;
--foreground: #1a1a1a;
--muted: #666666;
--border: #e5e5e5;
--accent: #2563eb;
--surface: #f5f5f5;
}
[data-theme="sepia"] {
--background: #f4ecd8;
--foreground: #5c4b37;
--muted: #8b7355;
--border: #d4c4a8;
--accent: #8b5a2b;
--surface: #ebe3d0;
}
@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
--color-muted: var(--muted);
--color-border: var(--border);
--color-accent: var(--accent);
--color-surface: var(--surface);
}
body {
background: var(--background);
color: var(--foreground);
font-family: system-ui, -apple-system, sans-serif;
transition: background-color 0.2s, color 0.2s;
}
/* Reader fonts */
.font-serif {
font-family: Georgia, Cambria, "Times New Roman", Times, serif;
}
.font-sans {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.font-mono {
font-family: "SF Mono", Monaco, "Cascadia Code", monospace;
}
.font-system {
font-family: system-ui, -apple-system, sans-serif;
}
/* Reader content styles */
.reader-content {
word-wrap: break-word;
overflow-wrap: break-word;
}
.reader-content p {
margin-bottom: 1.5em;
}
.reader-content h1,
.reader-content h2,
.reader-content h3,
.reader-content h4 {
margin-top: 1.5em;
margin-bottom: 0.75em;
font-weight: 600;
}
.reader-content a {
color: var(--accent);
text-decoration: underline;
}
.reader-content img {
max-width: 100%;
height: auto;
border-radius: 0.5rem;
margin: 1em 0;
}
.reader-content blockquote {
border-left: 3px solid var(--border);
padding-left: 1em;
margin-left: 0;
font-style: italic;
color: var(--muted);
}
.reader-content pre {
background: var(--surface);
padding: 1em;
border-radius: 0.5rem;
overflow-x: auto;
}
.reader-content code {
background: var(--surface);
padding: 0.2em 0.4em;
border-radius: 0.25rem;
font-size: 0.9em;
}
.reader-content pre code {
background: none;
padding: 0;
}
.reader-content ul,
.reader-content ol {
margin-left: 1.5em;
margin-bottom: 1em;
}
.reader-content li {
margin-bottom: 0.5em;
}
/* TTS highlight */
.tts-highlight {
background-color: var(--accent);
color: white;
padding: 0.1em 0.2em;
border-radius: 0.2em;
}
/* Scrollbar */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: var(--background);
}
::-webkit-scrollbar-thumb {
background: var(--border);
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: var(--muted);
}