Files
knur-app/app/globals.css
Dominik Klarkowski 4b3373869b init
2026-06-22 15:19:38 +02:00

115 lines
3.1 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@import "tailwindcss";
:root {
--color-bg: #2b2d42;
--color-surface: #363850;
--color-fg: #f7f3e9;
--color-accent: #fb4617;
--color-muted: #434247;
--color-secondary: #2e162e;
--color-sand: #d4cbbb;
}
@theme inline {
--color-bg: var(--color-bg);
--color-surface: var(--color-surface);
--color-fg: var(--color-fg);
--color-accent: var(--color-accent);
--color-muted: var(--color-muted);
--color-secondary: var(--color-secondary);
--color-sand: var(--color-sand);
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
--font-display: var(--font-space-grotesk);
}
body {
background: var(--color-bg);
color: var(--color-fg);
font-family: var(--font-sans), Arial, Helvetica, sans-serif;
}
/* Ambient accent glow behind everything — modern dark-UI depth. */
body::before {
content: "";
position: fixed;
inset: 0;
z-index: -1;
pointer-events: none;
background:
radial-gradient(60rem 40rem at 15% -10%, color-mix(in oklab, var(--color-accent) 14%, transparent), transparent 70%),
radial-gradient(50rem 40rem at 100% 0%, color-mix(in oklab, var(--color-secondary) 45%, transparent), transparent 65%);
}
/* Display font for all headings. */
h1,
h2,
h3 {
font-family: var(--font-display), var(--font-sans), sans-serif;
letter-spacing: -0.015em;
}
/* Tabular figures for stats so numbers line up. */
.tabular-nums {
font-variant-numeric: tabular-nums;
}
/* Confine Leaflet's internal panes (z-index 4001000) to their own stacking
context so the map never overlaps the sticky navbar. */
.leaflet-container {
z-index: 0;
}
/* Unified button system. In @layer components so Tailwind utility overrides
(e.g. px-8, text-xs, w-full) still win over these base styles. */
@layer components {
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.375rem;
border-radius: 0.75rem;
padding: 0.5rem 1rem;
font-size: 0.875rem;
font-weight: 600;
line-height: 1.25rem;
white-space: nowrap;
cursor: pointer;
transition: transform 0.12s ease, background-color 0.15s ease,
border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease,
filter 0.15s ease;
}
.btn:disabled {
opacity: 0.5;
cursor: not-allowed;
transform: none;
}
.btn-primary {
background: var(--color-accent);
color: #fff;
box-shadow: 0 6px 18px -6px color-mix(in oklab, var(--color-accent) 70%, transparent);
}
.btn-primary:hover:not(:disabled) {
filter: brightness(1.08);
transform: translateY(-1px);
}
.btn-primary:active:not(:disabled) {
filter: brightness(0.96);
transform: translateY(0);
}
.btn-secondary {
background: color-mix(in oklab, var(--color-surface) 55%, transparent);
border: 1px solid rgba(255, 255, 255, 0.12);
color: color-mix(in oklab, var(--color-fg) 88%, transparent);
-webkit-backdrop-filter: blur(8px);
backdrop-filter: blur(8px);
}
.btn-secondary:hover:not(:disabled) {
border-color: color-mix(in oklab, var(--color-accent) 55%, transparent);
color: var(--color-accent);
transform: translateY(-1px);
}
}