Files
67/apps/web/src/styles.css
2026-06-22 20:13:14 +03:00

144 lines
2.8 KiB
CSS

@import "tailwindcss";
@custom-variant dark (&:where(.dark, .dark *));
@theme {
--color-primary: #123c36;
--color-primary-strong: #082b27;
--color-dstu-menu: #2d323e;
--color-dstu-menu-accent: #1ee2e7;
--color-dstu-menu-line: #e67e22;
--color-accent: #d65a3a;
--color-accent-dark: #a84028;
--color-accent-soft: #f6ddd4;
--color-paper: #f5f2ea;
--color-surface: #fffdf8;
--color-ink: #17201e;
--color-muted: #66706d;
--color-line: #d9d8d0;
--color-success: #247a5a;
--color-success-soft: #dceee7;
--color-warning: #a96616;
--color-warning-soft: #f5e8d0;
--color-danger: #b43d3d;
--color-danger-soft: #f6dddd;
--font-sans: Inter, Arial, sans-serif;
--font-serif: Georgia, Cambria, serif;
--radius-md: 0.375rem;
--radius-lg: 0.75rem;
--radius-xl: 1.25rem;
--shadow-soft: 0 1.125rem 3.75rem rgb(18 60 54 / 0.08);
}
:root.dark {
--color-primary: #28685e;
--color-primary-strong: #071f1c;
--color-accent: #ef7858;
--color-accent-dark: #ff987d;
--color-accent-soft: #47251f;
--color-paper: #101614;
--color-surface: #18201e;
--color-ink: #edf2ef;
--color-muted: #a4afab;
--color-line: #34403c;
--color-success: #6fc29f;
--color-success-soft: #19372c;
--color-warning: #e9ad5c;
--color-warning-soft: #3c2c17;
--color-danger: #f08282;
--color-danger-soft: #422222;
--shadow-soft: 0 1.125rem 3.75rem rgb(0 0 0 / 0.28);
color-scheme: dark;
}
:root {
color: var(--color-ink);
background: var(--color-paper);
font-family: var(--font-sans);
font-synthesis: none;
text-rendering: optimizeLegibility;
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
margin: 0;
min-width: 20rem;
min-height: 100vh;
background: var(--color-paper);
transition:
color 180ms ease,
background-color 180ms ease;
}
body,
header,
main,
footer,
aside,
section,
article,
div,
input,
textarea,
select,
button {
transition-property: color, background-color, border-color;
transition-duration: 180ms;
transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
button,
input,
textarea,
select {
font: inherit;
}
a {
color: inherit;
text-decoration: none;
}
.page-shell {
width: min(100% - clamp(2rem, 6vw, 6rem), 80rem);
margin-inline: auto;
}
.page-shell-wide {
width: min(100% - clamp(2rem, 5vw, 5rem), 90rem);
margin-inline: auto;
}
::selection {
color: white;
background: var(--color-accent);
}
@view-transition {
navigation: auto;
}
::view-transition-old(root),
::view-transition-new(root) {
animation-duration: 180ms;
animation-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
scroll-behavior: auto !important;
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}