Files
convert/frontend/src/index.css
T

102 lines
2.7 KiB
CSS

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Bricolage+Grotesque:opsz,wght@12..96,500..800&family=IBM+Plex+Mono:wght@500;600&display=swap');
:root {
/* interactive-safe (AA-contrast) roles */
--color-primary: #6d28d9;
--color-on-primary: #ffffff;
--color-secondary: #0e7ea8;
--color-background: #faf9fe;
--color-foreground: #150f26;
--color-muted: #ede6ff;
--color-border: #e3daf7;
--color-destructive: #dc2626;
--color-ring: #6d28d9;
/* decorative aurora duo, drawn from the Ombrora mark — used for gradients, blobs, glow */
--color-aurora-violet: #7e14ff;
--color-aurora-cyan: #47bfff;
--color-aurora-mist: #ede6ff;
--gradient-aurora: linear-gradient(135deg, var(--color-aurora-violet), var(--color-aurora-cyan));
/* file-family accents, reused for icon chips across the upload flow */
--color-family-images: var(--color-aurora-violet);
--color-family-documents: var(--color-aurora-cyan);
--color-family-fonts: #f5a524;
--color-family-ebooks: #10b981;
--color-family-archives: #64748b;
--color-family-audio: #ec4899;
--color-family-video: #38bdf8;
--font-sans: 'Plus Jakarta Sans', system-ui, 'Segoe UI', Roboto, sans-serif;
--font-display: 'Bricolage Grotesque', var(--font-sans);
--font-mono: 'IBM Plex Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;
color-scheme: light dark;
font: 16px/1.5 var(--font-sans);
}
:root[data-theme='dark'] {
--color-primary: #9b6bff;
--color-on-primary: #150f26;
--color-secondary: #47bfff;
--color-background: #0d0a18;
--color-foreground: #f3f0ff;
--color-muted: #1c1530;
--color-border: #332853;
--color-destructive: #fb7185;
--color-ring: #9b6bff;
--color-aurora-violet: #9b6bff;
--color-aurora-cyan: #47bfff;
--color-aurora-mist: #241a3d;
--color-family-images: var(--color-aurora-violet);
--color-family-documents: var(--color-aurora-cyan);
--color-family-fonts: #ffb84d;
--color-family-ebooks: #34d399;
--color-family-archives: #94a3b8;
--color-family-audio: #f472b6;
--color-family-video: #7dd3fc;
}
*, *::before, *::after {
box-sizing: border-box;
}
body {
margin: 0;
background: var(--color-background);
color: var(--color-foreground);
transition: background-color 200ms ease, color 200ms ease;
}
#root {
min-height: 100svh;
display: flex;
flex-direction: column;
}
a {
color: var(--color-primary);
}
button, input, select {
font-family: inherit;
}
button {
cursor: pointer;
}
:focus-visible {
outline: 2px solid var(--color-ring);
outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
transition: none !important;
animation: none !important;
}
}