281 lines
5.9 KiB
CSS
281 lines
5.9 KiB
CSS
@import "tailwind/_base.css";
|
|
@import "tailwind/_components.css";
|
|
@import "tailwind/_utilities.css";
|
|
@import 'intro.js/introjs.css';
|
|
@import "_checkbox-radio-switch.css";
|
|
@import "_progress.css";
|
|
@import "_scrollbars.css";
|
|
@import "_table.css";
|
|
@import "_helper.css";
|
|
@import '_calendar.css';
|
|
@import '_select-dropdown.css';
|
|
@import "_theme.css";
|
|
@import '_rich-text.css';
|
|
|
|
|
|
.introjs-tooltip {
|
|
@apply min-w-[400px] max-w-[480px] p-2 !important;
|
|
}
|
|
|
|
.good-img {
|
|
@apply -mt-96 !important;
|
|
}
|
|
.end-img {
|
|
@apply -mt-72 !important;
|
|
}
|
|
.introjs-button {
|
|
@apply bg-blue-600 text-white !important;
|
|
text-shadow: none !important;
|
|
}
|
|
.introjs-bullets ul li a.active {
|
|
@apply bg-blue-600 !important;
|
|
}
|
|
.introjs-prevbutton{
|
|
@apply bg-transparent border border-blue-600 text-blue-600 !important;
|
|
}
|
|
|
|
/* Page crossfade animation keyframes - Safari optimized */
|
|
@-webkit-keyframes page-crossfade-in {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes page-crossfade-in {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes page-crossfade-out {
|
|
from {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes page-crossfade-out {
|
|
from {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 0;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
/* Crossfade animation classes - GPU accelerated for Safari */
|
|
.animate-crossfade-in {
|
|
/* Explicit initial state prevents Safari flash during animation setup */
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
-webkit-animation: page-crossfade-in 300ms ease-out forwards;
|
|
animation: page-crossfade-in 300ms ease-out forwards;
|
|
-webkit-backface-visibility: hidden;
|
|
backface-visibility: hidden;
|
|
/* Only animate opacity - transform is for GPU layer promotion */
|
|
will-change: opacity;
|
|
}
|
|
|
|
.animate-crossfade-out {
|
|
/* Explicit initial state prevents Safari flash during animation setup */
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
-webkit-animation: page-crossfade-out 300ms ease-out forwards;
|
|
animation: page-crossfade-out 300ms ease-out forwards;
|
|
-webkit-backface-visibility: hidden;
|
|
backface-visibility: hidden;
|
|
/* Only animate opacity - transform is for GPU layer promotion */
|
|
will-change: opacity;
|
|
}
|
|
|
|
/* Safari-specific GPU compositing optimization */
|
|
@supports (-webkit-touch-callout: none) {
|
|
.animate-crossfade-in,
|
|
.animate-crossfade-out {
|
|
/* Force GPU layer creation in Safari */
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
/* Prevent Safari from optimizing away the GPU layer */
|
|
-webkit-perspective: 1000;
|
|
perspective: 1000;
|
|
}
|
|
}
|
|
|
|
/* Element appear animation keyframes - Safari optimized */
|
|
@-webkit-keyframes element-fade-in {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes element-fade-in {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes element-slide-up {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, 20px, 0);
|
|
transform: translate3d(0, 20px, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes element-slide-up {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(0, 20px, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes element-slide-down {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(0, -20px, 0);
|
|
transform: translate3d(0, -20px, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes element-slide-down {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(0, -20px, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes element-slide-left {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(20px, 0, 0);
|
|
transform: translate3d(20px, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes element-slide-left {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(20px, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes element-slide-right {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: translate3d(-20px, 0, 0);
|
|
transform: translate3d(-20px, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: translate3d(0, 0, 0);
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes element-slide-right {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate3d(-20px, 0, 0);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate3d(0, 0, 0);
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes element-scale-in {
|
|
from {
|
|
opacity: 0;
|
|
-webkit-transform: scale3d(0.8, 0.8, 1);
|
|
transform: scale3d(0.8, 0.8, 1);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
-webkit-transform: scale3d(1, 1, 1);
|
|
transform: scale3d(1, 1, 1);
|
|
}
|
|
}
|
|
|
|
@keyframes element-scale-in {
|
|
from {
|
|
opacity: 0;
|
|
transform: scale3d(0.8, 0.8, 1);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: scale3d(1, 1, 1);
|
|
}
|
|
}
|
|
|
|
/* Instrument Sans font utilities */
|
|
.font-instrument-condensed {
|
|
font-family: 'Instrument Sans Variable', sans-serif;
|
|
font-stretch: 75%;
|
|
}
|
|
|
|
.font-instrument {
|
|
font-family: 'Instrument Sans Variable', sans-serif;
|
|
font-stretch: 100%;
|
|
}
|