Files
kycnotme/web/src/styles/global.css
2025-05-25 11:21:35 +00:00

153 lines
4.8 KiB
CSS

@import 'tailwindcss';
@plugin "@tailwindcss/forms";
@plugin 'tailwind-htmx';
@plugin '@tailwindcss/typography';
@custom-variant theme-midnight {
&:where([data-theme='midnight'] *) {
@slot;
}
}
@custom-variant js {
&:is(.js *) {
@slot;
}
}
@custom-variant no-js {
&:not(.js *) {
@slot;
}
}
@layer base {
button:not(:disabled),
[role='button']:not(:disabled),
label[for] {
cursor: pointer;
}
input[type='checkbox']:not(.unset) {
@apply border-day-300 checked:ring-day-300 cursor-pointer rounded border-2 text-green-600 shadow-sm ring-0 ring-current ring-offset-0 transition-all duration-100 not-checked:bg-zinc-800 checked:border-current focus-visible:ring-2;
}
input[type='radio']:not(.unset) {
@apply border-day-300 checked:ring-day-300 cursor-pointer rounded-full border-2 text-green-600 shadow-sm ring-0 ring-current ring-offset-0 transition-all duration-100 not-checked:bg-zinc-800 checked:border-current focus-visible:ring-2;
}
.prose {
@apply prose-headings:font-title;
}
}
@theme inline {
--font-title: 'Space Grotesk Variable', var(--font-sans), 'sans-serif';
}
@theme {
--text-2xs: 0.65rem;
}
@theme {
--breakpoint-xs: 475px;
--breakpoint-2xs: 375px;
}
@theme {
--color-score-1: #e26136;
--color-score-2: #eba370;
--color-score-3: #eddb82;
--color-score-4: #8de2d7;
--color-score-5: #3cdd71;
--color-score-saturate-1: #ff0000;
--color-score-saturate-2: #ff7300;
--color-score-saturate-3: #ffff00;
--color-score-saturate-4: #00ffff;
--color-score-saturate-5: #7cff00;
--color-day-50: oklch(97.13% 0.002 165.08);
--color-day-100: oklch(94.73% 0.003 165.07);
--color-day-200: oklch(89.62% 0.006 170.43);
--color-day-300: oklch(83.81% 0.01 171.74);
--color-day-400: oklch(74.95% 0.015 169.09);
--color-day-500: oklch(66.18% 0.02 171.17);
--color-day-600: oklch(56.71% 0.022 172.22);
--color-day-700: oklch(46.55% 0.018 170.35);
--color-day-800: oklch(34.77% 0.012 171.06);
--color-day-900: oklch(30.05% 0.01 179.07);
--color-day-950: oklch(27.08% 0.008 196.85);
--color-night-50: oklch(90.58% 0.009 171.78);
--color-night-100: oklch(80.76% 0.017 178.15);
--color-night-200: oklch(61.23% 0.035 173.55);
--color-night-300: oklch(36.23% 0.018 174.61);
--color-night-400: oklch(33.22% 0.017 172.96);
--color-night-500: oklch(28.79% 0.013 180.38);
--color-night-600: oklch(25.59% 0.012 178.46);
--color-night-700: oklch(22.09% 0.008 182.2);
--color-night-800: oklch(18.65% 0.007 178.83);
--color-night-900: oklch(13.3% 0.002 196.91);
--color-night-950: oklch(11.97% 0.004 145.32);
}
@utility text-shadow-glow {
text-shadow:
0 0 16px color-mix(in oklab, currentColor 30%, transparent),
0 0 4px color-mix(in oklab, currentColor 60%, transparent);
}
@utility drop-shadow-glow {
filter: drop-shadow(0 0 16px color-mix(in oklab, currentColor 30%, transparent))
drop-shadow(0 0 4px color-mix(in oklab, currentColor 60%, transparent));
}
@utility scrollbar-w-none {
scrollbar-width: none;
}
@utility checkbox-force-checked {
&:not(:checked) {
@apply border-transparent! bg-current/50!;
background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e") !important;
}
}
@theme {
--animate-text-gradient: text-gradient 4s linear 0s infinite normal forwards running;
@keyframes text-gradient {
to {
background-position: -200%;
}
}
}
@theme {
--ease-in-sine: cubic-bezier(0.12, 0, 0.39, 0);
--ease-out-sine: cubic-bezier(0.61, 1, 0.88, 1);
--ease-in-out-sine: cubic-bezier(0.37, 0, 0.63, 1);
--ease-in-quad: cubic-bezier(0.11, 0, 0.5, 0);
--ease-out-quad: cubic-bezier(0.5, 1, 0.89, 1);
--ease-in-out-quad: cubic-bezier(0.45, 0, 0.55, 1);
--ease-in-cubic: cubic-bezier(0.32, 0, 0.67, 0);
--ease-out-cubic: cubic-bezier(0.33, 1, 0.68, 1);
--ease-in-out-cubic: cubic-bezier(0.65, 0, 0.35, 1);
--ease-in-quart: cubic-bezier(0.5, 0, 0.75, 0);
--ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
--ease-in-out-quart: cubic-bezier(0.76, 0, 0.24, 1);
--ease-in-quint: cubic-bezier(0.64, 0, 0.78, 0);
--ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1);
--ease-in-out-quint: cubic-bezier(0.83, 0, 0.17, 1);
--ease-in-expo: cubic-bezier(0.7, 0, 0.84, 0);
--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
--ease-in-out-expo: cubic-bezier(0.87, 0, 0.13, 1);
--ease-in-circ: cubic-bezier(0.55, 0, 1, 0.45);
--ease-out-circ: cubic-bezier(0, 0.55, 0.45, 1);
--ease-in-out-circ: cubic-bezier(0.85, 0, 0.15, 1);
--ease-in-back: cubic-bezier(0.36, 0, 0.66, -0.56);
--ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);
--ease-in-out-back: cubic-bezier(0.68, -0.6, 0.32, 1.6);
}