@charset "UTF-8";

/* ---------------------------------

MARK: FONTS

---------------------------------- */

@font-face {
	font-display: swap;
	font-family: DaVinci;
	font-stretch: normal;
	font-style: normal;
	font-weight: 400;
	src: url("../../assets/fonts/TRJNDaVinci-Regular.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-family: DaVinci;
	font-stretch: normal;
	font-style: italic;
	font-weight: 400;
	src: url("../../assets/fonts/TRJNDaVinci-Italic.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-family: "Arial Narrow";
	font-stretch: normal;
	font-style: normal;
	font-weight: 400;
	src: local("Arial Narrow"),
		url("../../assets/fonts/Arial-Narrow.woff2") format("woff2");
}

@font-face {
	font-display: swap;
	font-family: Inter;
	font-stretch: normal;
	font-style: normal;
	font-weight: 400;
	src: url("../../assets/fonts/Inter-Regular.woff2") format("woff2");
}

@font-face {
	font-display: swap;
	font-family: Inter;
	font-stretch: normal;
	font-style: normal;
	font-weight: 600;
	src: url("../../assets/fonts/Inter-SemiBold.woff2") format("woff2");
}

/* ---------------------------------

MARK: ROOT VARIABLES

---------------------------------- */

:root {
	/* MEASURES */
	--px-1: 1px;
	--px-2: 0.1rem;
	--px-3: 0.15rem;
	--px-4: 0.2rem;
	--px-5: 0.25rem;
	--px-6: 0.3rem;
	--px-7: 0.35rem;
	--px-8: 0.4rem;
	--px-10: 0.5rem;
	--px-11: 0.55rem;
	--px-12: 0.6rem;
	--px-13: 0.65rem;
	--px-14: 0.7rem;
	--px-15: 0.75rem;
	--px-16: 0.8rem;
	--px-18: 0.9rem;
	--px-19: 0.95rem;
	--px-20: 1rem;
	--px-22: 1.1rem;
	--px-23: 1.15rem;
	--px-24: 1.2rem;
	--px-25: 1.25rem;
	--px-28: 1.4rem;
	--px-30: 1.5rem;
	--px-32: 1.6rem;
	--px-35: 1.75rem;
	--px-36: 1.8rem;
	--px-40: 2rem;
	--px-42: 2.1rem;
	--px-46: 2.3rem;
	--px-48: 2.4rem;
	--px-49: 2.45rem;
	--px-50: 2.5rem;
	--px-51: 2.55rem;
	--px-52: 2.6rem;
	--px-56: 2.8rem;
	--px-57: 2.85rem;
	--px-60: 3rem;
	--px-64: 3.2rem;
	--px-70: 3.5rem;
	--px-72: 3.6rem;
	--px-75: 3.75rem;
	--px-80: 4rem;
	--px-82: 4.1rem;
	--px-88: 4.4rem;
	--px-96: 4.8rem;
	--px-99: 4.95rem;
	--px-100: 5rem;
	--px-120: 6rem;
	--px-128: 6.4rem;
	--px-140: 7rem;
	--px-144: 7.2rem;
	--px-150: 7.5rem;
	--px-160: 8rem;
	--px-200: 10rem;
	--px-260: 13rem;
	--px-300: 15rem;
	--px-1920: 96rem;
	--px-2560: 128rem;

	/* COLOURS */

	/* ui */
	--ui-0: oklch(100% 0 0deg);
	--ui-25: oklch(95% 0 0deg);
	--ui-50: oklch(68% 0 0deg);
	--ui-75: oklch(32% 0 0deg);
	--ui-85: oklch(21% 0 0deg);
	--ui-100: oklch(0% 0 0deg);
	--ui-accent: oklch(75% 0.18 58.7deg);
	--ui-accent-contrast: oklch(88% 0.09 66.32deg);
	--ui-focus: oklch(56% 0.16 45.64deg);
	--ui-schedule: oklch(26% 0 0deg);

	/* system */
	--warning: oklch(67% 0.13 74.9deg);
	--warning-contrast: oklch(98% 0.05 100.69deg);
	--success: oklch(54% 0.16 147.39deg);
	--success-contrast: oklch(92% 0.05 152.6deg);
	--info: oklch(50% 0.14 263.55deg);
	--info-contrast: oklch(96% 0.02 267.79deg);
	--danger: oklch(59% 0.2 32.98deg);
	--danger-contrast: oklch(92% 0.04 29.36deg);

	/* general */
	--color-fg: var(--ui-100);
	--color-bg: var(--ui-0);
	--color-accent: var(--ui-accent);
	--color-focus: var(--ui-focus);
	--backdrop-lightbox: linear-gradient(
			oklch(0% 0 0deg / 75%),
			oklch(0% 0 0deg / 75%)
		),
		oklch(56% 0.16 45.64deg / 75%);
	--backdrop-modal: oklch(0% 0 0deg / 80%);

	/* BORDERS */
	--border-input: inset 0 0 0 var(--s-hair) var(--ui-50);
	--border-input-focus: inset 0 0 0 var(--s-hair) var(--ui-75);
	--border-checkbox-hover: inset 0 0 0 var(--s-hair) var(--ui-100);
	--border-info: inset 0 0 0 var(--s-hair) var(--info);
	--border-error: inset 0 0 0 var(--s-hair) var(--danger);
	--focus-primary: 0 0 0 var(--px-2) var(--color-bg),
		0 0 0 var(--px-4) var(--color-focus);
	--focus-secondary: 0 0 0 var(--px-2) var(--color-bg),
		0 0 0 var(--px-4) var(--ui-accent-contrast);
	--focus-tertiary: 0 0 0 var(--px-2) var(--ui-50),
		0 0 0 var(--px-4) var(--color-focus);
	--focus-footer: 0 0 0 var(--px-2) var(--color-fg),
		0 0 0 var(--px-4) var(--color-focus);

	/* SPACINGS */
	--size-2xs: var(--px-5);
	--size-xs: var(--px-10);
	--size-sm: var(--px-20);
	--size-md: var(--px-40);
	--size-lg: var(--px-60);
	--size-xl: var(--px-80);
	--size-2xl: var(--px-120);
	--gutter: var(--size-xs);
	--gutter-outer: var(--size-xs);
	--max-width: unset;
	--scroll-margin-top: var(--header-height);

	/* TYPOGRAPHY */
	--f-davinci: "DaVinci", serif;
	--f-arial: "Arial Narrow", sans-serif;
	--f-inter: "Inter", sans-serif;
	--f-3xs: var(--px-11);
	--f-2xs: var(--px-12);
	--f-xs: var(--px-14);
	--f-sm: var(--px-15);
	--f-md: var(--px-20);
	--f-lg: var(--px-35);
	--f-xl: var(--px-50);
	--f-2xl: var(--px-70);
	--f-3xl: var(--px-150);
	--paragraph-space: 1em;
	--underline-color: var(--color-accent);
	--underline-thickness: var(--px-1, 3%);
	--underline-offset: 14%;

	/* TRANSITIONS */
	--t-fonts: all 500ms var(--ease-out-sine);
	--t-btns: background-color 500ms var(--ease-out-sine),
		color 300ms var(--ease-out-sine), opacity 1000ms var(--ease-out-sine),
		translate 500ms var(--ease-out-sine),
		text-decoration-color 500ms var(--ease-out-sine),
		border 500ms var(--ease-out-sine);
	--t-cards: background-color 500ms var(--ease-out-sine),
		filter 500ms var(--ease-out-sine), opacity 500ms var(--ease-out-sine);
	--t-menu: background-color 500ms var(--ease-out-sine),
		color 300ms var(--ease-out-sine), opacity 1000ms var(--ease-out-sine),
		translate 500ms var(--ease-out-sine), padding 500ms var(--ease-out-sine);

	/* LINE HEIGHTS */
	--lh-xs: 0.9;
	--lh-sm: 1;
	--lh-md: 1.05;
	--lh-lg: 1.1;
	--lh-xl: 1.15;
	--lh-2xl: 1.2;

	/* LETTER SPACINGS */
	--ls-n4: -0.04em;
	--ls-n3: -0.03em;
	--ls-n1: -0.01em;
	--ls-0: 0;
	--ls-1: 0.01em;

	/* STROKES */
	--s-hair: var(--px-1);
	--s-thin: var(--px-2);
	--s-thick: var(--px-4);

	/* VIEWPORT UNITS RESETS */
	--vh: calc(100vh / 100);
	--vw: calc(100vw / 100);
	--fvh: calc(100vh / 100);
	--fvw: calc(100vw / 100);

	/* CUSTOM VARIABLES */
	--logo-login: url("../../../../themes/linecheck2025-theme/assets/i/linecheck-logo.svg");

	/* BASE64 ICONS */
	--icon-plus: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M14.922 26.828v-8.344q0-1.406-1.406-1.406H4.375c-.234 0-.375-.094-.375-.234s0-.282.047-.328l.375-.985c.14-.422.375-.61.75-.61h8.344q1.406 0 1.406-1.405V4.375c0-.234.094-.375.234-.375s.281 0 .328.047l.985.375c.422.14.61.375.61.75v8.344q0 1.406 1.405 1.406h9.141c.234 0 .375.094.375.281 0 0 0 .047-.047.047 0 .094-.047.14-.047.234l-.328 1.032c-.14.375-.375.562-.75.562h-8.344q-1.406 0-1.406 1.406v9.141c0 .234-.094.375-.281.375 0 0-.047 0-.047-.047-.094 0-.14-.047-.234-.047l-1.032-.328c-.375-.14-.562-.375-.562-.75' fill='currentcolor'/%3E %3C/svg%3E ");
	--icon-minus: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='m4.047 16.478.375-.913c.14-.391.375-.565.75-.565h22.453c.234 0 .375.087.375.26 0 0 0 .044-.047.044 0 .087-.047.13-.047.218l-.328.956c-.14.348-.375.522-.75.522H4.375C4.141 17 4 16.913 4 16.783s0-.261.047-.305' fill='currentcolor'/%3E %3C/svg%3E ");
	--icon-left: url("data:image/svg+xml,%3Csvg viewBox='0 0 57 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.57 24.511c.758.826 1.517.55 1.241-.412-.483-1.376-1.241-2.752-2.069-3.99-2.62-4.196 4.414-6.122 21.517-6.053h20.207c1.379 0 2.62-3.165 0-3.165H35.534c-17.103 0-25.103-1.582-22.62-4.815 1.034-1.513 2.069-3.095 2.827-4.746.759-1.513-.138-1.788-1.38-.55C10.295 4.976 5.674 9.378.778 11.855c-1.035.481-.966.825-.207 1.238 4.965 2.545 9.586 6.878 14 11.418' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-right: url("data:image/svg+xml,%3Csvg viewBox='0 0 57 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M42.43 24.511c-.758.826-1.517.55-1.241-.412.483-1.376 1.241-2.752 2.069-3.99 2.62-4.196-4.414-6.122-21.517-6.053H1.535c-1.38 0-2.621-3.165 0-3.165h19.93c17.103 0 25.103-1.582 22.62-4.815-1.034-1.513-2.068-3.095-2.827-4.746-.759-1.513.138-1.788 1.38-.55 4.068 4.196 8.689 8.598 13.585 11.075 1.035.481.966.825.207 1.238-4.965 2.545-9.586 6.878-14 11.418' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-top-right: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22.89 11.136c.029.66-.399.862-.684.345-.37-.776-.627-1.667-.798-2.53-.656-2.844-4.363-.718-11.405 6.438l-8.354 8.42c-.57.575-2.395-.23-1.312-1.322l8.24-8.305C15.648 7.055 18.3 3.061 15.933 2.744c-1.055-.2-2.138-.43-3.136-.804-.941-.316-.684-.805.342-.805 3.422.058 7.157-.029 10.207-1.034.628-.23.742-.058.6.43-.999 3.133-1.113 6.869-1.056 10.605' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-diamond: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M14.996 8a1 1 0 0 1-.292.705L8.7 14.708a1 1 0 0 1-1.41 0l-6-6.003a1 1 0 0 1 0-1.41L7.294 1.29a1 1 0 0 1 1.41 0l6.003 6.004a1 1 0 0 1 .289.705' fill='currentcolor'/%3E %3C/svg%3E ");
	--icon-times: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25.707 24.292a1 1 0 0 1-1.415 1.415L16 17.413l-8.293 8.294a1 1 0 0 1-1.415-1.415L14.586 16 6.292 7.707a1 1 0 1 1 1.415-1.415L16 14.586l8.292-8.294a1 1 0 1 1 1.415 1.415L17.413 16z' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-error: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.5 8.5V5a.5.5 0 1 1 1 0v3.5a.5.5 0 0 1-1 0m7-2.778v4.556a1 1 0 0 1-.293.707l-3.222 3.222a1 1 0 0 1-.707.293H5.722a1 1 0 0 1-.707-.293l-3.222-3.222a1 1 0 0 1-.293-.707V5.722a1 1 0 0 1 .293-.707l3.222-3.222a1 1 0 0 1 .707-.293h4.556a1 1 0 0 1 .707.293l3.222 3.222a1 1 0 0 1 .293.707m-1 0L10.278 2.5H5.722L2.5 5.722v4.556L5.722 13.5h4.556l3.222-3.222zM8 10a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-warning: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.8 11.756 9.334 2.264a1.547 1.547 0 0 0-2.668 0L1.2 11.756a1.47 1.47 0 0 0 0 1.482A1.52 1.52 0 0 0 2.534 14h10.932A1.52 1.52 0 0 0 15 12.497c0-.26-.069-.516-.2-.741m-.867.982a.53.53 0 0 1-.467.262H2.534a.53.53 0 0 1-.467-.262.48.48 0 0 1 0-.483l5.465-9.492a.547.547 0 0 1 .938 0l5.466 9.492a.48.48 0 0 1-.003.482M7.5 9V6.5a.5.5 0 0 1 1 0V9a.5.5 0 0 1-1 0m1.25 2.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-success: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m14.354 4.854-8 8a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 0 1 .708-.708L6 11.793l7.646-7.647a.5.5 0 1 1 .708.708' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-chevron-down: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m13.354 6.354-5 5a.5.5 0 0 1-.708 0l-5-5a.5.5 0 0 1 .708-.708L8 10.293l4.646-4.647a.5.5 0 1 1 .708.708' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-chevron-right: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m22.707 16.707-10 10a1 1 0 0 1-1.415-1.415L20.586 16l-9.294-9.293a1 1 0 1 1 1.415-1.415l10 10a1 1 0 0 1 0 1.415' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-chevron-left: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.707 25.292a1 1 0 0 1-1.415 1.415l-10-10a1 1 0 0 1 0-1.415l10-10a1 1 0 1 1 1.415 1.415L11.414 16z' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-info: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 0a8 8 0 1 0 8 8 8.01 8.01 0 0 0-8-8m0 14.77A6.77 6.77 0 1 1 14.77 8 6.777 6.777 0 0 1 8 14.77' fill='currentcolor'/%3E%3Cpath d='M7.354 12.233V6.069h1.35v6.164zm.68-7.039a.76.76 0 0 1-.553-.228.76.76 0 0 1-.231-.558q0-.33.231-.558a.75.75 0 0 1 .552-.233q.325 0 .552.233a.76.76 0 0 1 .231.558.76.76 0 0 1-.23.558.75.75 0 0 1-.553.228' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-check: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m28.707 9.707-16 16a1 1 0 0 1-1.415 0l-7-7a1 1 0 0 1 1.415-1.415L12 23.586 27.292 8.292a1 1 0 1 1 1.415 1.415' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-zoom-in: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 14a1 1 0 0 1-1 1h-3v3a1 1 0 0 1-2 0v-3h-3a1 1 0 0 1 0-2h3v-3a1 1 0 1 1 2 0v3h3a1 1 0 0 1 1 1m9.708 14.708a1 1 0 0 1-1.415 0l-6.258-6.259a11.014 11.014 0 1 1 1.414-1.414l6.259 6.258a1 1 0 0 1 0 1.415M14 23a9 9 0 1 0-9-9 9.01 9.01 0 0 0 9 9' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-zoom-out: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 14a1 1 0 0 1-1 1h-8a1 1 0 0 1 0-2h8a1 1 0 0 1 1 1m9.708 14.708a1 1 0 0 1-1.415 0l-6.258-6.259a11.014 11.014 0 1 1 1.414-1.414l6.259 6.258a1 1 0 0 1 0 1.415M14 23a9 9 0 1 0-9-9 9.01 9.01 0 0 0 9 9' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-pause: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M27 6v20a2 2 0 0 1-2 2h-5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5a2 2 0 0 1 2 2M12 4H7a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h5a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-play: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 16a1.97 1.97 0 0 1-.95 1.688L11.04 28.706a2 2 0 0 1-2.767-.689A2 2 0 0 1 8 27.016V4.983a1.98 1.98 0 0 1 1.015-1.727 2 2 0 0 1 2.025.037l18.01 11.018A1.97 1.97 0 0 1 30 16' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-mute: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.375 11.875v-3.75a.625.625 0 1 1 1.25 0v3.75a.625.625 0 1 1-1.25 0M17.5 6.25a.625.625 0 0 0-.625.625v6.25a.625.625 0 1 0 1.25 0v-6.25a.625.625 0 0 0-.625-.625M4.213 2.705a.625.625 0 1 0-.925.84L5.746 6.25H2.5A1.25 1.25 0 0 0 1.25 7.5v5a1.25 1.25 0 0 0 1.25 1.25h3.535l5.456 4.243A.625.625 0 0 0 12.5 17.5v-3.821l3.287 3.616a.624.624 0 1 0 .925-.84zm7.2 6.061a.625.625 0 0 0 1.087-.42V2.5a.625.625 0 0 0-1.009-.493L8.378 4.43a.625.625 0 0 0-.078.914z' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-audio: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 2.5v15a.625.625 0 0 1-1.009.493L6.035 13.75H2.5a1.25 1.25 0 0 1-1.25-1.25v-5A1.25 1.25 0 0 1 2.5 6.25h3.535l5.456-4.243A.625.625 0 0 1 12.5 2.5m2.5 5a.625.625 0 0 0-.625.625v3.75a.625.625 0 1 0 1.25 0v-3.75A.625.625 0 0 0 15 7.5m2.5-1.25a.625.625 0 0 0-.625.625v6.25a.625.625 0 1 0 1.25 0v-6.25a.625.625 0 0 0-.625-.625' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-lens: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m28.708 27.293-6.259-6.258a11.014 11.014 0 1 0-1.414 1.414l6.258 6.259a1 1 0 0 0 1.415-1.415M5 14a9 9 0 1 1 9 9 9.01 9.01 0 0 1-9-9' fill='currentcolor'/%3E%3C/svg%3E");
	--icon-filters: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25 16a1 1 0 0 1-1 1H8a1 1 0 0 1 0-2h16a1 1 0 0 1 1 1m4-7H3a1 1 0 0 0 0 2h26a1 1 0 0 0 0-2M19 21h-6a1 1 0 0 0 0 2h6a1 1 0 0 0 0-2' fill='currentcolor'/%3E%3C/svg%3E");

	/* CURVES */

	/* Standard CSS keywords */
	/* default browser ease */
	--ease: cubic-bezier(0.25, 0.1, 0.25, 1);
	/* starts slow, ends fast */
	--ease-in: cubic-bezier(0.42, 0, 1, 1);
	/* starts fast, ends slow */
	--ease-out: cubic-bezier(0, 0, 0.58, 1);
	/* slow at both ends */
	--ease-in-out: cubic-bezier(0.42, 0, 0.58, 1);

	/* --- Sine: smooth and natural motion curves --- */
	/* very subtle acceleration */
	--ease-in-sine: cubic-bezier(0.47, 0, 0.745, 0.715);
	/* soft deceleration */
	--ease-out-sine: cubic-bezier(0.39, 0.575, 0.565, 1);
	/* slow start & end, fluid curve */
	--ease-in-out-sine: cubic-bezier(0.445, 0.05, 0.55, 0.95);

	/* --- Quad: based on power of 2 --- */
	/* acceleration starts gentle */
	--ease-in-quad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
	/* deceleration ends gentle */
	--ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	/* moderate acceleration and deceleration */
	--ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);

	/* --- Cubic: based on power of 3 --- */
	/* sharper ease-in than quad */
	--ease-in-cubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	/* smoother ease-out */
	--ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
	/* more aggressive at both ends */
	--ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);

	/* --- Quart: based on power of 4 --- */
	/* steep acceleration */
	--ease-in-quart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
	/* steep deceleration */
	--ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
	/* fast transitions, hard stops */
	--ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);

	/* --- Quint: based on power of 5 --- */
	/* very steep acceleration */
	--ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
	/* very steep deceleration */
	--ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
	/* punchy, sharp motion both ends */
	--ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1);

	/* --- Expo: exponential (power of 2^n), very fast/slow --- */
	/* starts extremely slow, then rockets */
	--ease-in-expo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
	/* ends extremely fast */
	--ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
	/* extreme both ends (feels snappy) */
	--ease-in-out-expo: cubic-bezier(1, 0, 0, 1);

	/* --- Circ: circular motion, natural feeling curves --- */
	/* simulates curve entering a circle */
	--ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.335);
	/* like gliding to a stop */
	--ease-out-circ: cubic-bezier(0.075, 0.82, 0.165, 1);
	/* circular both ends, elegant */
	--ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.15, 0.86);

	/* --- Back: overshoots and pulls back (springy) --- */
	/* briefly moves backward before starting */
	--ease-in-back: cubic-bezier(0.6, -0.28, 0.735, 0.045);
	/* overshoots at the end */
	--ease-out-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);
	/* overshoots at both ends, elastic feel */
	--ease-in-out-back: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/* ---------------------------------

MARK: PSEUDO ELEMENTS & CLASSES

---------------------------------- */

/* Firefox-only */
* {
	scrollbar-color: var(--color-fg) var(--color-bg);
	scrollbar-width: thin;
}

/* Chrome/Edge/Safari */
*::-webkit-scrollbar {
	background-color: var(--color-bg);
	height: 12px;
	width: 12px;
}

*::-webkit-scrollbar-track {
	background: var(--color-bg);
	border-radius: 6px;
}

*::-webkit-scrollbar-thumb {
	background-color: var(--color-fg);
	border: 3px solid var(--color-bg);
	border-radius: 6px;
}

::selection {
	background-color: var(--color-fg);
	color: var(--color-bg);
}

[class*="--bg-fore"] ::selection {
	background-color: var(--color-bg);
	color: var(--color-fg);
}

::placeholder {
	color: var(--ui-75);
}

:focus {
	outline: none;
	outline-width: 0;
}

/* Remove all focus-visible styles from buttons */
button:focus-visible {
	outline: none;
	box-shadow: none;
	/* border: none; */
	/* background: none; */
	/* Reset any other properties that might be styled */
}
