Files
family-planner/apps/client/src/index.css

66 lines
2.9 KiB
CSS
Raw Normal View History

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');
@tailwind base;
@tailwind components;
@tailwind utilities;
/* ─── Base token defaults (light) — overridden by JS applyTheme() ──── */
:root {
--color-bg: #f8fafc;
--color-surface: #ffffff;
--color-surface-raised: #f1f5f9;
--color-border: #e2e8f0;
--color-text-primary: #0f172a;
--color-text-secondary: #475569;
--color-text-muted: #94a3b8;
--color-accent: #6366f1;
--color-accent-light: #e0e7ff;
}
/* ─── Smooth theme transitions on every surface ───────────────────── */
*, *::before, *::after {
transition-property: background-color, color, border-color;
transition-duration: 200ms;
transition-timing-function: ease;
}
/* But NOT on animations / transforms */
[data-no-transition], [data-no-transition] * {
transition: none !important;
}
/* ─── Base body ───────────────────────────────────────────────────── */
body {
background-color: var(--color-bg);
color: var(--color-text-primary);
font-family: 'Inter', system-ui, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* ─── Scrollbar styling ────────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--color-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-text-muted); }
/* ─── Focus ring ───────────────────────────────────────────────────── */
:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
/* ─── Utility layer ────────────────────────────────────────────────── */
@layer utilities {
.bg-surface { background-color: var(--color-surface); }
.bg-surface-raised { background-color: var(--color-surface-raised); }
.bg-app { background-color: var(--color-bg); }
.border-theme { border-color: var(--color-border); }
.text-primary { color: var(--color-text-primary); }
.text-secondary { color: var(--color-text-secondary); }
.text-muted { color: var(--color-text-muted); }
.text-accent { color: var(--color-accent); }
.bg-accent { background-color: var(--color-accent); }
.bg-accent-light { background-color: var(--color-accent-light); }
.ring-accent { --tw-ring-color: var(--color-accent); }
}