@import "antd/dist/antd.variable.less";
@import "theme/animations.less";
@import "theme/vars.less";
@import "theme/fonts.css";
@import "theme/fixments.less";

html {
	overflow: hidden;
	height: 100%;
	-webkit-overflow-scrolling: touch;

	background-color: var(--background-color-primary) !important;

	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	span {
		color: var(--text-color);
	}

	svg {
		color: var(--text-color);
		margin-right: 10px;
		vertical-align: -0.125em;
	}

	body {
		overflow: hidden;
		-webkit-overflow-scrolling: touch;
		-webkit-app-region: no-drag;

		height: 100%;

		user-select: none;
		--webkit-user-select: none;

		scroll-behavior: smooth;
		text-rendering: optimizeLegibility !important;

		background-color: var(--background-color-primary) !important;
		font-family: var(--fontFamily);
	}

	*:not(input):not(textarea) {
		-webkit-user-select: none;
		/* disable selection/Copy of UIWebView */
		-webkit-touch-callout: none;
		/* disable the IOS popup when long-press on a link */
	}

	::-webkit-scrollbar {
		display: none;

		width: 0;
		height: 0;
		z-index: 0;
	}

	::-webkit-scrollbar-thumb {
		position: absolute;
		z-index: 200;

		height: 6px;
		margin: 5px 10px 5px 5px;
		transition: all 200ms ease-in-out;

		border: 4px solid rgba(0, 0, 0, 0);
		background-color: rgba(0, 0, 0, 0.15);
		background-clip: padding-box;

		-webkit-border-radius: 7px;
	}

	::-webkit-scrollbar-button {
		width: 0;
		height: 0;
		display: none;
	}

	::-webkit-scrollbar-corner {
		background-color: transparent;
	}

	#root {
		-webkit-overflow-scrolling: touch;

		position: fixed;
		overflow: hidden;

		width: 100%;
		height: 100%;

		background-color: var(--layoutBackgroundColor) !important;

		&.electron {
			.layout_page {
				padding-top: 35px;
			}

			.ant-layout-sider {
				padding-top: 0px;
			}
		}
	}

	#nprogress {
		position: absolute;
		top: 0;
		width: 100vw;

		.bar {
			height: 2px;
			background: #48acf0;
		}
	}
}

.ant-layout,
.content_layout {
	width: 100%;
	height: 100%;
	max-height: 100vh;

	background-color: transparent;
}

.app_layout {
	background-color: rgba(var(--layoutBackgroundColor), var(--backgroundColorTransparency)) !important;
	backdrop-filter: blur(var(--backgroundBlur));

	position: relative;
	-webkit-overflow-scrolling: touch;

	width: 100%;
	height: 100%;
	max-height: 100vh;

	overflow: hidden;
	transition: all 150ms ease-in-out;

	::-webkit-scrollbar {
		display: block;
		position: absolute;

		width: 14px;
		height: 18px;
		z-index: 200;
		transition: all 200ms ease-in-out;
	}

	&.mobile {
		//padding-top: 20px;

		::-webkit-scrollbar {
			display: none !important;
			width: 0;
			height: 0;
			z-index: 0;
		}
	}
}

.layout_page {
	position: relative;
	-webkit-overflow-scrolling: touch;

	height: 100%;

	padding: 10px;

	overflow-x: hidden;
	overflow-y: overlay;

	transition: all 150ms ease-in-out;

	margin: var(--layoutMargin);
	padding: var(--layoutPadding);
}

.app_background_decorator {
	background-image: var(--backgroundImage);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;

	position: absolute;
	top: 0;
	left: 0;

	width: 100vw;
	height: 100vh;

	transition: all 150ms ease-in-out;
}

.app_render_error {
	position: relative;

	display: flex;
	flex-direction: column;

	justify-content: center;
	align-items: center;

	width: 100vw;
	height: 100vh;

	.ant-result {
		background-color: var(--background-color-primary);
		border-radius: 8px;
	}
}

.app_splash_wrapper {
	position: absolute;

	top: 0;
	left: 0;

	overflow: hidden;

	backdrop-filter: blur(10px);
	--webkit-backdrop-filter: blur(10px);

	width: 100%;
	height: 100%;
	z-index: 1000;

	display: flex;
	flex-direction: column;

	align-items: center;
	justify-content: center;

	>div {
		margin-bottom: 40px;
	}

	svg {
		color: var(--text-color) !important;
	}

	.splash_logo {
		width: 200px;
		height: 200px;

		display: flex;
		flex-direction: column;

		align-items: center;
		justify-content: center;

		img {
			width: 100%;
			filter: drop-shadow(14px 10px 10px rgba(128, 128, 128, 0.5));
		}
	}

	.splash_label {
		font-size: 2rem;

		svg {
			margin: 0 !important;
		}
	}
}

@media (max-width: 768px) {
	.layout_page {
		padding: 10px;
		margin: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	span,
	p {
		user-select: none;
		-webkit-user-select: none;
	}

	.postCard {
		min-width: 30px;
	}
}