AskJerry / frontend /src /index.css
NeonClary
Cursor
Refresh Ask Jerry UI and fix jump-to-question button
175465b
Raw History Blame Contribute Delete
6.16 kB
:root {
color-scheme: light dark;
/* ---- Warm cream theme (light) — harmonized with the Chumash tribal palette ----
Colors are drawn from / harmonize with the Santa Ynez Band of Chumash logo:
cobalt sunburst blue, olive ring green, terracotta center red, golden accents,
black turtle, cream ground. Cobalt blue doubles as the cyber/tech accent. */
/* Surfaces: page = warm sand/cream gradient, chrome = cream, cards = white */
--lc-bg: #faf7f1; /* --bg-primary */
--lc-bg2: #f3eee6; /* --bg-secondary */
--lc-bg3: #ebe4d8; /* --bg-tertiary */
--lc-gradient: linear-gradient(165deg, #fbf8f3 0%, #f5efe6 55%, #f0e9df 100%);
--lc-header: #fbf9f5; /* very light cream chrome — NOT pure white */
--lc-sidebar: #e8e0d4; /* deeper cream so cards separate */
--lc-elevated: #ffffff; /* --card-bg */
--lc-card: #ffffff;
--lc-card-hover: #f5f1e9;
--lc-input: #ffffff;
--lc-bubble: #ffffff; /* assistant bubble = white card */
--lc-border: #ddd5c8; /* --border-primary */
--lc-border-muted: #e8e1d6;
--lc-text: #1a1613; /* --text-primary (warm near-black, echoes the turtle) */
--lc-text-secondary: #4a453e;
--lc-muted: #6a645c; /* --text-tertiary / --text-muted */
--lc-placeholder: #9c958a;
/* Accent — cobalt sunburst blue (tribal + cybersecurity); the single primary action */
--lc-accent: #1e6fbd;
--lc-accent2: #2a86c4;
--lc-accent-strong: #164e8e;
--lc-accent-gradient: linear-gradient(135deg, #2277c6, #14568f);
--lc-accent-light: #e6f0fa;
--lc-hover: rgba(30, 111, 189, 0.08);
--lc-selected: rgba(30, 111, 189, 0.12);
/* Tribal earth tones — used as small meaning accents, not decoration */
--lc-tribal-blue: #1e6fbd;
--lc-tribal-green: #4f7d2b;
--lc-tribal-red: #a93b22;
--lc-tribal-gold: #e0a008;
--lc-tribal-strip: linear-gradient(90deg, #1e6fbd 0%, #4f7d2b 34%, #a93b22 67%, #e0a008 100%);
/* Feedback colors mapped to the tribal palette */
--lc-danger: #b4402a; /* terracotta */
--lc-danger-strong: #8a2e1b;
--lc-danger-text: #6e2415;
--lc-danger-bg: #f8ece7;
--lc-danger-border: #e4b6a8;
--lc-success: #4f7d2b; /* olive/forest green */
--lc-success-bg: #e9f0df;
--lc-success-border: #afc98c;
--lc-warning: #b8830a; /* golden ochre */
--lc-warning-fill: #e0a008;
/* Subtle surface tints (code blocks / table headers) — warm, not neutral black */
--lc-tint: rgba(40, 30, 10, 0.04);
--lc-tint-strong: rgba(40, 30, 10, 0.06);
/* Warm-tinted shadows */
--lc-shadow-sm: 0 1px 2px rgba(40, 30, 10, 0.06);
--lc-shadow: 0 4px 10px -2px rgba(40, 30, 10, 0.08), 0 2px 4px -2px rgba(40, 30, 10, 0.05);
--lc-shadow-lg: 0 12px 24px -6px rgba(40, 30, 10, 0.12), 0 4px 8px -4px rgba(40, 30, 10, 0.06);
/* Upward shadow for the sticky composer dock */
--lc-shadow-up: 0 -6px 16px -10px rgba(40, 30, 10, 0.18);
/* Focus ring — visible on all interactive elements */
--lc-focus-ring: 0 0 0 2px var(--lc-card), 0 0 0 4px var(--lc-accent);
/* Radius scale */
--lc-radius-sm: 6px;
--lc-radius: 10px;
--lc-radius-lg: 14px;
/* Layout — centered reading column for the conversation */
--lc-col: 900px;
}
/* ---- Dark mode (parallel set — deep charcoal "cyber" surfaces, tribal-tinted accents) ---- */
@media (prefers-color-scheme: dark) {
:root {
--lc-bg: #0e1216;
--lc-bg2: #141a1f;
--lc-bg3: #1b232a;
--lc-gradient: linear-gradient(165deg, #121821 0%, #0e1216 55%, #0b0f13 100%);
--lc-header: #121821;
--lc-sidebar: #161d24;
--lc-elevated: #182029;
--lc-card: #182029;
--lc-card-hover: #1f2a34;
--lc-input: #182029;
--lc-bubble: #182029;
--lc-border: #2a3742;
--lc-border-muted: #212c35;
--lc-text: #eef3f7;
--lc-text-secondary: #c2cdd6;
--lc-muted: #93a1ad;
--lc-placeholder: #6b7986;
--lc-accent: #4d9fe0;
--lc-accent2: #5fb0c9;
--lc-accent-strong: #7bb8ea;
--lc-accent-gradient: linear-gradient(135deg, #3f97dd, #2f7fc4);
--lc-accent-light: rgba(77, 159, 224, 0.16);
--lc-hover: rgba(77, 159, 224, 0.12);
--lc-selected: rgba(77, 159, 224, 0.2);
--lc-tribal-blue: #4d9fe0;
--lc-tribal-green: #7fb356;
--lc-tribal-red: #d5674b;
--lc-tribal-gold: #e6b53a;
--lc-tribal-strip: linear-gradient(90deg, #4d9fe0 0%, #7fb356 34%, #d5674b 67%, #e6b53a 100%);
--lc-danger: #e0755b;
--lc-danger-strong: #eda08c;
--lc-danger-text: #f2c3b6;
--lc-danger-bg: rgba(180, 64, 42, 0.16);
--lc-danger-border: rgba(224, 117, 91, 0.4);
--lc-success: #8bbf5f;
--lc-success-bg: rgba(79, 125, 43, 0.18);
--lc-success-border: rgba(139, 191, 95, 0.4);
--lc-warning: #e6b53a;
--lc-warning-fill: #e6b53a;
--lc-tint: rgba(230, 240, 250, 0.05);
--lc-tint-strong: rgba(230, 240, 250, 0.08);
--lc-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
--lc-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.5), 0 2px 4px -2px rgba(0, 0, 0, 0.4);
--lc-shadow-lg: 0 12px 24px -6px rgba(0, 0, 0, 0.6), 0 4px 8px -4px rgba(0, 0, 0, 0.4);
--lc-shadow-up: 0 -6px 16px -10px rgba(0, 0, 0, 0.6);
}
}
* {
box-sizing: border-box;
}
html,
body {
height: 100%;
margin: 0;
}
body {
font-family: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
-webkit-font-smoothing: antialiased;
font-size: 15px;
line-height: 1.5;
background: var(--lc-bg);
color: var(--lc-text);
}
#root {
height: 100%;
min-height: 100dvh;
display: flex;
flex-direction: column;
}
button,
input,
textarea {
font-family: inherit;
}
/* Visible focus ring on all interactive elements (low specificity so
component rules can refine it). */
:where(a, button, input, textarea, select, [tabindex]):focus-visible {
outline: none;
box-shadow: var(--lc-focus-ring);
}
/* Respect reduced-motion: disable spinners / transitions */
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
animation-duration: 0.001ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.001ms !important;
scroll-behavior: auto !important;
}
}