@tailwind components; @tailwind base; @tailwind utilities; @layer base { html { width: 100%; height: 100%; } html, html * { scrollbar-color: theme("colors.gray.700") theme("colors.gray.300"); scrollbar-width: thin; scroll-behavior: smooth; } *::selection { background-color: theme("colors.primary.100"); color: theme("colors.primary.500"); } *::-moz-selection { background-color: theme("colors.primary.100"); color: theme("colors.primary.500"); } html.dark *::selection { background-color: theme("colors.primary.800"); color: theme("colors.primary.500"); } html.dark *::-moz-selection { background-color: theme("colors.primary.800"); color: theme("colors.primary.500"); } html.dark, html.dark * { scrollbar-color: theme("colors.gray.300") theme("colors.gray.700"); scrollbar-width: thin; } @media (prefers-color-scheme: dark) { *::selection { background-color: theme("colors.primary.900"); color: theme("colors.primary.500"); } *::-moz-selection { background-color: theme("colors.primary.900"); color: theme("colors.primary.500"); } html, html * { scrollbar-color: theme("colors.gray.300") theme("colors.gray.700"); scrollbar-width: thin; } } input:-webkit-autofill, input:-webkit-autofill:focus { transition: background-color 0s 600000s, color 0s 600000s !important; } } .marquee-container { width: 100%; padding: 1rem; scale: var(--scale); } .marquee-container[data-spill=true]::after { --padding-x: 1rem; --padding-y: 1rem; content: ""; position: fixed; top: 50%; left: 50%; background: hsl(10 80% 0% / 0.25); width: calc(var(--scale) * 10000vw); height: calc(var(--scale) * 10000vh); pointer-events: none; translate: -50% -50%; mask: linear-gradient(white, white) 50% 50% / 100% 100% no-repeat, linear-gradient(white, white) 50% 50% / calc(100cqi + (var(--padding-x) * 2)) calc(100cqh + (var(--padding-y) * 2)) no-repeat; mask-composite: exclude; } .marquee-container:not([data-spill=true]) { overflow: hidden; } [data-direction=horizontal] { height: 100%; } [data-direction=vertical] { width: 100%; } .marquee-container ul { display: flex; padding: 0; margin: 0; list-style-type: none; } [data-reverse=true] * { animation-direction: reverse !important; } [data-translate=track][data-direction=horizontal] ul { --destination-x: -100%; animation: track-translate calc(var(--speed) * 1s) infinite linear; } [data-translate=track][data-direction=vertical] ul { --destination-y: -100%; animation: track-translate calc(var(--speed) * 1s) infinite linear; } [data-translate=track][data-direction=horizontal][data-pad=true] ul { --destination-x: calc((100% / -3) * 2); translate: calc(100% / -3) 0; } [data-translate=track][data-direction=vertical][data-pad=true] ul { --destination-y: calc((100% / -3) * 2); translate: 0 calc(100% / -3); } [data-pad-diff=true] .pad { background: hsl(0 0% 10%); color: hsl(0 0% 98%); } @keyframes track-translate { to { translate: var(--destination-x, 0) var(--destination-y, 0); } } [data-direction=horizontal] ul { height: max-content; width: fit-content; align-items: center; } [data-direction=vertical] ul { width: 100%; height: fit-content; justify-items: center; flex-direction: column; } [data-play-state=running] :is(ul, li) { animation-play-state: running !important; } [data-play-state=paused] :is(ul, li) { animation-play-state: paused !important; } /* The animation stuff */ @media(prefers-reduced-motion: no-preference) { [data-translate=items] ul { gap: 0; } [data-translate=items][data-direction=horizontal].marquee-container { padding-inline: 0; } [data-translate=items][data-direction=vertical].marquee-container { padding-block: 0; } [data-translate=items][data-spill=true][data-direction=horizontal].marquee-container::after { --padding-x: 0rem; } [data-translate=items][data-direction=vertical][data-spill=true].marquee-container::after { --padding-y: 0rem; } [data-pause-on-hover=true]:hover li { animation-play-state: paused !important; } [data-translate=items] li { --duration: calc(var(--speed) * 1s); --delay: calc((var(--duration) / var(--count)) * (var(--index, 0) - (var(--count) * 0.5))); animation: slide var(--duration) calc(var(--delay) - (var(--count) * 0.5s)) infinite linear paused; translate: var(--origin-x) var(--origin-y); } [data-translate=items][data-direction=horizontal] li { --origin-x: calc(((var(--count) - var(--index)) + var(--inset, 0)) * 100%); --origin-y: 0; --destination-x: calc(calc((var(--index) + 1 + var(--outset, 0)) * -100%)); --destination-y: 0; } [data-translate=items][data-direction=vertical] li { --origin-x: 0; --origin-y: calc(((var(--count) - var(--index)) + var(--inset, 0)) * 100%); --destination-x: 0; --destination-y: calc(calc((var(--index) + 1 + var(--outset, 0)) * -100%)); } @keyframes slide { 100% { translate: var(--destination-x) var(--destination-y); } } } .marquee-animation { -webkit-animation: loop-animate 60s linear infinite; animation: loop-animate 60s linear infinite; } @keyframes loop-animate { 0% { -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); } 100% { -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } } .digit_timing{ transition: translate 1s linear( 0, 0.0009 8.51%, -0.0047 19.22%, 0.0016 22.39%, 0.023 27.81%, 0.0237 30.08%, 0.0144 31.81%, -0.0051 33.48%, -0.1116 39.25%, -0.1181 40.59%, -0.1058 41.79%, -0.0455, 0.0701 45.34%, 0.9702 55.19%, 1.0696 56.97%, 1.0987 57.88%, 1.1146 58.82%, 1.1181 59.83%, 1.1092 60.95%, 1.0057 66.48%, 0.986 68.14%, 0.9765 69.84%, 0.9769 72.16%, 0.9984 77.61%, 1.0047 80.79%, 0.9991 91.48%, 1 ); translate: 0 calc((var(--v) + 1) * (var(--line-height) * -1)); }