el.xwx.moe/styles/globals.css
2023-09-05 16:04:34 -04:00

234 lines
3.8 KiB
CSS

@tailwind base;
@tailwind components;
@tailwind utilities;
/* Hide scrollbar */
.hide-scrollbar::-webkit-scrollbar {
display: none;
}
.hide-scrollbar {
-ms-overflow-style: none;
scrollbar-width: none;
}
::selection {
background-color: #0ea5e9;
color: white;
}
.hyphens {
hyphens: auto;
}
.rotate {
transition: transform 0.1s ease;
transform: rotate(-90deg);
}
.rotate-reverse {
transition: transform 0.1s ease;
transform: rotate(0deg);
}
.fade-in {
animation: fade-in-animation 100ms;
}
@keyframes fade-in-animation {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.slide-up {
animation: slide-up-animation 70ms;
}
.slide-down {
animation: slide-down-animation 70ms;
}
@keyframes slide-down-animation {
0% {
transform: translateY(-15%);
opacity: 0;
}
100% {
transform: translateY(0);
opacity: 1;
}
}
@keyframes slide-up-animation {
0% {
transform: translateY(15%);
opacity: 0;
}
100% {
transform: translateY(0);
opacity: 1;
}
}
.slide-right {
animation: slide-right-animation 200ms;
}
@keyframes slide-right-animation {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(0);
}
}
.slide-right-with-fade {
animation: slide-right-animation 150ms;
}
@keyframes slide-right-animation {
0% {
transform: translateX(-50%);
opacity: 0;
}
100% {
transform: translateX(0);
opacity: 1;
}
}
.spin {
animation: spin 2s linear infinite;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
/* For react-colorful */
.color-picker .react-colorful {
width: 100%;
height: 7.5rem;
}
.color-picker .react-colorful__hue {
height: 1rem;
}
.color-picker .react-colorful__pointer {
width: 1.3rem;
height: 1.3rem;
}
/* For the Link banner */
.link-banner {
/* box-shadow: inset 0px 10px 20px 20px #ffffff; */
opacity: 25%;
z-index: 0;
}
.link-banner .link-banner-inner {
/* box-shadow: inset 0px 10px 20px 20px #ffffff; */
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
-webkit-mask: linear-gradient(#fff, transparent);
mask: linear-gradient(#fff, transparent);
}
.link-banner::after {
content: "";
position: absolute;
z-index: 1;
bottom: 0;
left: 0;
pointer-events: none;
width: 100%;
height: 4rem;
}
.link-banner::before {
content: "";
position: absolute;
z-index: 1;
top: 0;
left: 0;
pointer-events: none;
width: 100%;
height: 4rem;
}
/* For light mode */
.banner-light-mode .link-banner::after {
background-image: linear-gradient(
to bottom,
rgba(255, 255, 255, 0),
rgba(255, 255, 255, 1) 90%
);
}
.banner-light-mode .link-banner::before {
background-image: linear-gradient(
to top,
rgba(255, 255, 255, 0),
rgba(255, 255, 255, 1) 90%
);
}
/* For dark mode */
.banner-dark-mode .link-banner::after {
background-image: linear-gradient(
to bottom,
rgba(255, 255, 255, 0),
#171717 90%
);
}
.banner-dark-mode .link-banner::before {
background-image: linear-gradient(
to top,
rgba(255, 255, 255, 0),
#171717 90%
);
}
/* Theme */
@layer base {
body {
@apply dark:bg-neutral-900 bg-white dark:text-white;
}
}
/* react-select */
@layer components {
.react-select-container .react-select__control {
@apply dark:bg-neutral-950 bg-gray-50 dark:border-neutral-700 dark:hover:border-neutral-500;
}
.react-select-container {
@apply dark:border-neutral-700;
}
.react-select-container .react-select__menu {
@apply dark:bg-neutral-900 dark:border-neutral-700 border;
}
.react-select-container .react-select__option {
@apply dark:hover:bg-neutral-800;
}
.react-select-container .react-select__input-container,
.react-select-container .react-select__single-value {
@apply dark:text-white;
}
}
.sky-shadow {
box-shadow: 0px 0px 3px #0ea5e9;
}