85 lines
1.9 KiB
CSS
85 lines
1.9 KiB
CSS
@tailwind base;
|
|
@tailwind components;
|
|
@tailwind utilities;
|
|
|
|
/* Theme tokens — values ported 1-to-1 from References/slp-software-rood.html (red, default)
|
|
and References/slp-software.html (purple, alternate). See
|
|
aidlc-docs/features/react-frontend/construction/react-frontend-app/functional-design/domain-entities.md
|
|
(ThemeTokens) for the data model these mirror. */
|
|
.theme-red {
|
|
--color-bg: #140c0e;
|
|
--color-surface: #1f1315;
|
|
--color-surface-2: #291719;
|
|
--color-line: #402226;
|
|
--color-text: #f5eaeb;
|
|
--color-muted: #b69c9f;
|
|
--color-accent: #e04848;
|
|
--color-accent-soft: rgba(224, 72, 72, 0.16);
|
|
--color-accent-line: rgba(224, 72, 72, 0.4);
|
|
--color-accent-hover: #ea6161;
|
|
--color-accent-contrast: #140c0e;
|
|
}
|
|
|
|
.theme-purple {
|
|
--color-bg: #0e1220;
|
|
--color-surface: #151a2c;
|
|
--color-surface-2: #1b2138;
|
|
--color-line: #262e4a;
|
|
--color-text: #e9ebf5;
|
|
--color-muted: #98a0ba;
|
|
--color-accent: #8b7cff;
|
|
--color-accent-soft: rgba(139, 124, 255, 0.14);
|
|
--color-accent-line: rgba(139, 124, 255, 0.35);
|
|
--color-accent-hover: #9d90ff;
|
|
--color-accent-contrast: #0e1220;
|
|
}
|
|
|
|
html {
|
|
scroll-behavior: smooth;
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
html {
|
|
scroll-behavior: auto;
|
|
}
|
|
}
|
|
|
|
body {
|
|
background-color: var(--color-bg);
|
|
color: var(--color-text);
|
|
}
|
|
|
|
/* Instant, non-animated theme switch when the visitor prefers reduced motion (BR-5). */
|
|
.theme-red,
|
|
.theme-purple {
|
|
transition: background-color 0.2s ease, color 0.2s ease;
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.theme-red,
|
|
.theme-purple {
|
|
transition: none;
|
|
}
|
|
}
|
|
|
|
@keyframes caret-blink {
|
|
50% {
|
|
opacity: 0;
|
|
}
|
|
}
|
|
|
|
.caret {
|
|
display: inline-block;
|
|
width: 9px;
|
|
height: 1.2em;
|
|
background: var(--color-accent);
|
|
animation: caret-blink 1.1s steps(1) infinite;
|
|
vertical-align: text-bottom;
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.caret {
|
|
animation: none;
|
|
}
|
|
}
|