@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Alex+Brush&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');

* {
	box-sizing: border-box;
	padding: 0px;
	margin: 0px;
	background: transparent;
	color: #fff;
	font-family: "Poppins", serif;
}

:root {
  --vh: 1vh;
}

body {
	display: flex;
	position: relative;
	flex-direction: column;
	width: 100%;
	height: calc(var(--vh) * 100);
	background: #282828;
	color: #fff;
	overflow: hidden;
	user-select: none;
}

::-webkit-scrollbar {
	//display: none;
  width: 7px;
	height: 7px;
	background: inherit;
	border-radius: 10px;
	border: none;
	border-width: 1px;
	border-color: #525252;
}

::-webkit-scrollbar-thumb {
	background: #818181;
	border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
	background: #919191;
}

::-webkit-scrollbar-thumb:active {
	background: #a1a1a1;
}

#banner {
	display: flex;
	position: fixed;
	flex-direction: row;
	width: 100%;
	height: 100px;
	border: none;
	align-items: center;
	justify-content: space-between;
	padding: 0px 15px;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
}

#banner-logo {
	display: flex;
	flex-direction: row;
	//border: solid;
	border-color: #525252;
	border-width: 1px;
	//background: #3e3e3e;
	width: fit-content;
	height: fit-content;
	cursor: pointer;
	text-decoration: none;
	align-items: center;
	gap: 5px;
	transform: scale(0.9);
	border-radius: 14px;
	padding: 14px;
}

#banner-logo:hover {
	filter: brightness(0.8);
}

#banner-logo:active {
	filter: brightness(1);
}

#banner-logo-text {
	font-size: 35px;
}

#banner-logo-image {
	width: 40px;
	-webkit-user-drag: none;
}

#banner-buttons {
	display: flex;
	flex-direction: row;
	border: none;
	gap: 20px;
	align-items: center;
}

#notification-button-container {
	display: flex;
	position: relative;
	border: none;
}

#notification-button-container:hover {
	filter: brightness(0.8);
}

#notification-button-container:active {
	filter: brightness(1);
}

#notification-button-status {
	position: absolute;
	right: 0px;
	height: 8px;
	aspect-ratio: 1 / 1;
	background: #2196f3;
	border-radius: 3000px;
	opacity: 0;
}

#notification-button {
	height: 35px;
	cursor: pointer;
}

#upload-button {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	//border: solid;
	border-color: #525252;
	border-width: 1px;
	//background: #3e3e3e;
	border-radius: 14px;
	padding: 7px;
	cursor: pointer;
}

#upload-button:hover {
	filter: brightness(0.8);
}

#upload-button:active {
	filter: brightness(1);
}

#upload-button-image {
	width: 35px;
	-webkit-user-drag: none;
}

#signup-button {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	//border: solid;
	border-color: #525252;
	border-width: 1px;
	//background: #3e3e3e;
	border-radius: 14px;
	gap: 5px;
	padding: 0px 7px;
}

#signup-button:hover {
	filter: brightness(0.8);
}

#signup-button:active {
	filter: brightness(1);
}

#signup-button-image {
	width: 35px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 3000px;
}

#feed-wrapper {
	display: flex;
	flex-direction: row;
	height: 100%;
	width: 100%;
}

#feed {
	display: flex;
	position: relative;
	flex-direction: column;
	height: 100%;
	width: -webkit-fill-available;
	background: #000;
	justify-content: start;
	align-items: center;
	overflow-y: scroll;
	overflow-x: hidden;
	scrollbar-width: none;
	scroll-snap-type: y mandatory;
}

.video-container {
	display: none;
	position: absolute;
	height: 100%;
	width: -webkit-fill-available;
	justify-content: center;
	align-items: center;
	scroll-snap-align: start;
}

.video-container:nth-child(1) {
	top: 0%;
}

.video-container:nth-child(2) {
	top: 100%;
}

.video-container:nth-child(3) {
	top: 200%;
}

.video {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0px;
	display: flex;
	background: #000;
}

/*.video-container:first-child .video {
	opacity: 0;
}*/

.video-overlay {
	display: flex;
	flex-direction: row;
	position: absolute;
	width: 100%;
	height: calc((var(--vh) * 100) - 200px);
	justify-content: space-between;
	padding-right: 30px;
	padding-left: 10px;
	bottom: 90px;
}

.video-overlay-data {
	display: flex;
	flex-direction: column;
	border: none;
	justify-content: end;
	width: 380px;
}

.video-heading {
	display: flex;
	flex-direction: row;
	gap: 15px;
	align-items: center;
}

.video-author {
	font-size: 20px;
	cursor: pointer;
}

.video-description {
	font-size: 14px;
}

.video-overlay-buttons {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.overlay-button-svgs {
	height: 35px;
}

.video-button-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: all 0.1s linear;
	border: none;
	padding: 5px 0px;
}

.video-button-container:hover {
	transform: scale(1.2);
}

.video-button-container:active {
	transform: scale(1);
}

.video-author-button {
	height: 35px;
	aspect-ratio: 1 / 1;
	cursor: pointer;
	border-radius: 3000px;
	transition: all 0.1s linear;
	margin: 5px 0px;
}

.video-author-button:hover {
	transform: scale(1.2);
}

.video-author-button:active {
	transform: scale(1);
}

.video-shares-count {
	display: none;
}

.video-options-count {
	display: none;
}

.video-downloads-count {
	display: none;
}

.video-options-menu {
	display: none;
	flex-direction: column;
	cursor: pointer;
}

.video-options-menu-option {
	display: flex;
	flex-direction: row;
	border: solid;
	border-radius: 7px;
	background: #3e3e3e;
	border-color: #525252;
	padding: 10px;
	align-items: center;
	gap: 10px;
	border-width: 1px;
}

.video-options-menu-option:hover {
	filter: brightness(1.3);
}

.video-options-menu-option:active {
	filter: brightness(1.5);
}

.video-options-menu-option-image {
	height: 20px;
}

.video-options-menu-option-text {
	font-size: 18px;
}

.video-downloads-container {
	display: none;
}

.video-controls {
	display: flex;
	flex-direction: column;
	height: 80px;
	width: -webkit-fill-available;
	background: rgba(0, 0, 0, 0);
	align-self: end;
	//justify-content: center;
	z-index: 1;
}

.controls-button {
	height: 40px;
	cursor: pointer;
	border: solid;
	border-width: 1px;
	border-color: #525252;
	background: #3e3e3e;
	border-radius: 3000px;
	padding: 5px;
}

.controls-button:hover {
	filter: brightness(1.3);
}

.controls-button:active {
	filter: brightness(1.5);
}

.controls-buttons-container {
	display: flex;
	flex-direction: row;
	border: none;
	height: 100%;
	justify-content: space-between;
	align-items: center;
	padding: 0px 15px;
}

.play-button-container {
	display: flex;
	flex-direction: row;
	gap: 10px;
	align-items: center;
}

.progress-bar-container {
	display: flex;
	justify-content: start;
	align-items: center;
	position: relative;
	border: none;
	background: #6e6e6e;
	width: 100%;
	height: 5px;
	cursor: pointer;
}

.progress-bar {
	position: absolute;
	background: #fff;
	width: 50%;
	height: 5px;
	cursor: pointer;
}

.progress-bar-ball {
	position: absolute;
	background: #fff;
	cursor: pointer;
	border-radius: 3000px;
	width: 10px;
	aspect-ratio: 1/1;
	opacity: 0;
	transform: translateX(-5px);
}

.time-display {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.right-controls {
	display: flex;
	flex-direction: row;
	gap: 10px;
}

.switch-controls {
	display: flex;
	flex-direction: row;
	gap: 10px;
}

.switch-container {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 5px;
}

.switch {
	display: flex;
	position: relative;
	width: 32px;
	height: 18px;
	background: #616161;
	border-radius: 3000px;
	cursor: pointer;
	align-items: center;
	transition: all 0.1s linear;
}

.switch:hover {
	filter: brightness(1.3);
}

.switch:active {
	filter: brightness(1);
}

.switch-ball {
	position: absolute;
	border-radius: 3000px;
	height: 12px;
	aspect-ratio: 1 / 1;
	background: #fff;
	transition: all 0.1s linear;
	left: 6%;
}

#video-sidebar {
	display: none;
	position: relative;
	flex-direction: column;
	border: solid;
	border-width: 1px;
	border-color: #525252;
	background: #3e3e3e;
	min-width: 380px;
	max-width: 380px;
	width: 380px;
	padding: 20px;
	padding-top: 100px;
	overflow-y: auto;
	overflow-x: hidden;
	max-height: calc(var(--vh) * 100);
	gap: 20px;
	border-radius: 10px;
	transition: width 2s linear;
}

#video-sidebar-exit-button-container {
	display: flex;
	width: -webkit-fill-available;
	justify-content: space-between;
	align-items: center;
}

#video-sidebar-exit-button {
	width: 47px;
	cursor: pointer;
	border: solid;
	border-color: #767676;
	background: #5c5c5c;
	border-radius: 3000px;
	padding: 8px;
	border-width: 1px;
}

#video-sidebar-exit-button:hover {
	filter: brightness(1.3);
}

#video-sidebar-exit-button:active {
	filter: brightness(1.5);
}

#video-sidebar-title {
	font-size: 20px;
}

#comments-container {
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	overflow-x: auto;
	height: 466px;
	gap: 15px;
	border: none;
	scrollbar-width: none;
}

#comments-container::-webkit-scrollbar {
	display: none;
  width: 10px;
	background: inherit;
	border-radius: 10px;
	border: none;
	border-width: 1px;
	border-color: #525252;
}

#comments-container::-webkit-scrollbar-thumb {
	background: #818181;
	border-radius: 10px;
}

#comments-container::-webkit-scrollbar-thumb:hover {
	background: #919191;
}

#comments-container::-webkit-scrollbar-thumb:active {
	background: #a1a1a1;
}

.comment {
	display: flex;
	flex-direction: row;
	gap: 10px;
	margin-right: 3px;
	max-width: 340px;
}

.comment-author-image {
	border-radius: 3000px;
	height: 45px;
	aspect-ratio: 1 / 1;
	cursor: pointer;
	object-fit: cover;
}

.comment-data-container {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 280px;
}

.comment-top-data {
	display: flex;
	flex-direction: column;
}

.comment-username {
	font-size: 16px;
	background: inherit;
	width: fit-content;
	cursor: pointer;
	text-decoration: none;
}

.comment-username:hover {
	text-decoration: underline;
}

.comment-username:active {
	text-decoration: none;
}

.comment-date {
	font-size: 15px;
	color: #a4a4a4;
	cursor: text;
	user-select: text;
}

.comment-text {
	font-size: 16px;
	cursor: text;
	user-select: text;
}

.comment-bottom-data {
	display: flex;
	flex-direction: row;
	gap: 15px;
}

.comment-button-container {
	display: flex;
	flex-direction: row;
	gap: 5px;
	width: fit-content;
	cursor: pointer;
	transition: all 0.1s linear;
}

.comment-button-container:hover {
	transform: scale(1.05);
}

.comment-button-container:active {
	transform: scale(1);
}

.comment-button-icon {
	width: 25px;
}

.comment-replies-container {
	display: flex;
	flex-direction: column;
	padding-top: 15px;
}

.comment-replies-container:active {
	filter: brightness(0.9);
}

#comment-input-container {
	display: flex;
	flex-direction: row;
	position: sticky;
	border: solid;
	width: 345px;
	min-height: fit-content;
	align-self: center;
	bottom: 0px;
	border-radius: 3000px;
	overflow: hidden;
	padding: 0px 6px;
	background: #282828;
	border-color: #313131;
	border-width: 1px;
}

#comment-input-container:hover {
	border-color: #fff;
}

#comment-input-container:active {
	filter: brightness(1.5);
}

#comment-input-container:focus-within {
	border-color: #fff;
}

#comment-input {
	outline: none;
	border: none;
	width: -webkit-fill-available;
	padding: 7px;
	font-size: 14px;
}

#comment-input-button {
	width: 20px;
	cursor: pointer;
}

.reply-input-container {
	display: none;
	flex-direction: row;
	border: solid;
	border-radius: 3000px;
	overflow: hidden;
	padding: 0px 6px;
	background: #282828;
	border-color: #313131;
	border-width: 1px;
	width: -webkit-fill-available;
}

.reply-input-container:hover {
	border-color: #fff;
}

.reply-input-container:active {
	filter: brightness(1.5);
}

.reply-input-container:focus-within {
	border-color: #fff;
}

.reply-input {
	outline: none;
	border: none;
	width: 100%;
	padding: 7px;
	font-size: 14px;
}

.reply-input-button {
	width: 20px;
	cursor: pointer;
}

.form-container {
	display: none;
	position: absolute;
	background: transparent;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	z-index: 2;
}

.form {
	display: flex;
	flex-direction: column;
	background: #282828;
	width: 90%;
	max-width: 750px;
	padding: 30px;
	border-radius: 25px;
	gap: 16px;
	border: solid;
	border-width: 1px;
	background: #3e3e3e;
	border-color: #525252;
	max-height: calc(var(--vh) * 90);
	overflow-y: auto;
	overflow-x: hidden;
}

.form-exit-button-container {
	display: flex;
	width: 100%;
	justify-content: end;
}

#signup-exit-button-container {
	justify-content: space-between;
}

#login-exit-button-container {
	justify-content: space-between;
}

.form-exit-button {
	height: 47px;
	border: solid;
	border-color: #767676;
	background: #5c5c5c;
	border-width: 1px;
	cursor: pointer;
	border-radius: 3000px;
	padding: 8px;
}

.form-exit-button:hover {
	filter: brightness(1.3);
}

.form-exit-button:active {
	filter: brightness(1.5);
}

.form-title-container {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.form-title {
	text-align: center;
	font-size: 27px;
}

.form-warning {
	display: none;
	text-align: center;
	justify-content: center;
	color: #f00;
}

.form-or {
	width: 100%;
	display: flex;
	justify-content: center;
	margin-top: 7px;
	font-size: 18px;
}

.form-inputs-container {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 20px;
}

.form-input-container {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.form-input-title {
	padding-left: 20px;
}

.form-input {
	border: solid;
	width: 100%;
	height: 46px;
	border-radius: 3000px;
	padding: 20px;
	font-size: 15px;
	border-color: #999;
	border-width: 1px;
}

.form-input[type="date"] {
	padding: 0px 20px;
	width: 100%;
	appearance: none;
	text-align: left;
}

.form-input[type="date"]::-webkit-date-and-time-value {
  text-align: left;
}

.form-input[type="date"]:before {
	content: var(--placeholder);
	color: #a5a5a5;
}

#agreement-text {
	font-size: 15px;
}

#agreement-text > a {
	color: #2196f3;
}

#agreement-text > a:hover {
	filter: brightness(0.8);
}

#agreement-text > a:active {
	filter: brightness(1);
}

#signup-buttons {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 10px;
}

.form-button {
	text-align: center;
	background: #2196F3;
	padding: 7px 0px;
	border-radius: 3000px;
	cursor: pointer;
	border: solid;
	border-width: 1px;
	border-color: #76b0de;
}

.form-button:hover {
	filter: brightness(0.8);
}

.form-button:active {
	filter: brightness(1);
}

.form-alternate-button {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0px 15px;
	background: #5c5c5c;
	border: solid;
	border-color: #767676;
	border-width: 1px;
}

#login-buttons {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 10px;
}

#login-other-options {
	display: flex;
	flex-direction: row;
	width: 100%;
	justify-content: space-evenly;
}

#forgot-password {
	display: none;
	text-align: center;
	cursor: pointer;
	text-decoration: underline;
}

#profile {
	display: none;
	flex-direction: column;
	position: relative;
	width: 100%;
	height: 100%;
	border: none;
	overflow-x: hidden;
	overflow-y: auto;
	margin-top: 100px;
}

/*#edit-button-container {
	display: none;
	justify-content: end;
	width: 100%;
}*/

#edit-button {
	display: none;
	position: absolute;
	border: solid;
	border-width: 1px;
	border-color: #525252;
	background: #3e3e3e;
	font-size: 20px;
	padding: 7px 17px;
	border-radius: 10px;
	margin: 0px 15px;
	cursor: pointer;
	width: fit-content;
	align-self: end;
	z-index: 1;
}

#edit-button:hover {
	filter: brightness(1.3);
}

#edit-button:active {
	filter: brightness(1.5);
}

#profile-heading {
	display: flex;
	position: relative;
	flex-direction: column;
	width: fit-content;
	max-width: 100%;
	align-items: center;
	border: none;
	border-width: 1px;
	border-color: #525252;
	background: transparent;
	align-self: center;
	padding: 40px;
	border-radius: 30px;
	user-select: text;
	margin: 0px 15px;
	gap: 10px;
}

#heading-picture {
	height: 160px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 3000px;
	-webkit-user-drag: none;
	cursor: pointer;
}

#heading-picture:hover {
	filter: brightness(0.8);
}

#heading-picture:active {
	filter: brightness(1);
}

#heading-main-content-wrapper {
	display: flex;
	flex-direction: row;
	gap: 30px;
	max-width: 100%;
}

#heading-main-content {
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
	cursor: default;
	user-select: none;
}

#heading-username {
	font-size: 18px;
}

#heading-name-container {
	display: flex;
	flex-direction: row;
	border: none;
	align-items: center;
	gap: 5px;
}

#heading-name {
	font-size: 27px;
	border: none;
}

#heading-more-container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

#heading-more-button {
	border: none;
	height: 30px;
	cursor: pointer;
}

#heading-more-button:hover {
	filter: brightness(0.8);
}

#heading-more-button:active {
	filter: brightness(1);
}

#heading-more-options {
	display: none;
	position: absolute;
	flex-direction: column;
	border-radius: 10px;
	overflow: hidden;
	margin-top: 35px;
}

.heading-more-option {
	background: #3e3e3e;
	border: solid;
	border-width: 1px;
	border-color: #525252;
	padding: 7px 17px;
	cursor: pointer;
}

.heading-more-option:hover {
	filter: brightness(1.3);
}

.heading-more-option:active {
	filter: brightness(1.5);
}

#heading-bio-container {
	display: flex;
	flex-direction: column;
	max-width: 520px;
	user-select: none;
	cursor: pointer;
}

#heading-bio {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 15px;
	white-space: pre-wrap;
	line-height: 1.4;
	max-height: calc(1.4em * var(--lines));
	transition: max-height 3s linear;
}

#heading-bio-more-button {
	display: none;
	color: #9c9c9c;
}

#heading-bio > a {
	color: #2196F3;
	text-decoration: none;
}

#heading-bio > a:hover {
	text-decoration: underline;
}

#heading-bio > a:active {
	text-decoration: none;
}

#heading-stats {
	display: flex;
	flex-direction: row;
	gap: 50px;
}

#follow-button {
	display: none;
	text-align: center;
	background: #2196f3;
	padding: 7px 20px;
	border-radius: 3000px;
	cursor: pointer;
	border: solid;
	border-width: 1px;
	border-color: #76b0de;
	user-select: none;
	width: 100%;
}

#follow-button:hover {
	filter: brightness(0.8);
}

#follow-button:active {
	filter: brightness(1);
}

#profile-videos-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	width: 100%;
	padding: 15px;
	gap: 15px;
	//margin-top: 80px;
}

.profile-video {
	display: none;
	position: relative;
	min-width: 180px;
	min-height: 250px;
	border: solid;
	justify-content: start;
	align-items: end;
	border-radius: 10px;
	cursor: pointer;
	overflow: hidden;
	border-width: 1px;
	border-color: #969696;
}

.profile-video:hover {
	border-color: #fff;

	.profile-video-play-icon {
		display: flex;
	}

	.profile-video-options-button {
		display: block;
	}
}

.profile-video::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: var(--bg-image);
	background-size: cover;
	background-position: center;
	filter: blur(10px);
	z-index: -1;
}

.profile-video-thumbnail {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.profile-video-play-icon {
	display: none;
	position: absolute;
	width: 50px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.profile-video-options-container {
	display: flex;
	flex-direction: column;
	position: absolute;
	top: 10px;
	left: 10px;
	border: none;
	align-items: start;
	gap: 10px;
	z-index: 1;
}

.profile-video-options-button {
	display: flex;
	width: 41px;
	background: #3e3e3e;
	padding: 7px;
	border-radius: 3000px;
	-webkit-user-drag: none;
	border: solid;
	border-color: #525252;
	border-width: 1px;
	opacity: 0.7;
}

.profile-video-options-button:hover {
	opacity: 0.9;
}

.profile-video-options-button:active {
	filter: brightness(1.5);
}

.profile-video-delete-button {
	display: none;
	flex-direction: row;
	background: #3e3e3e;
	width: fit-content;
	height: fit-content;
	padding: 8px;
	border-radius: 5px;
	justify-content:center;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	border: solid;
	border-color: #525252;
	border-width: 1px;
}

.profile-video-delete-button:hover {
	background: #f00;
}

.profile-video-delete-button:active {
	filter: brightness(0.8);
}

.profile-video-delete-button-image {
	width: 30px;
	-webkit-user-drag: none;
}

.profile-video-delete-button-text {
	font-size: 18px;
}

.profile-video-views-container {
	display: flex;
	position: absolute;
	flex-direction: row;
	border: none;
	width: fit-content;
	height: fit-content;
	margin: 10px;
	gap: 5px;
}

.profile-video-views-icon {
	width: 22px;
}

.profile-video-views-count {
	font-size: 19px;
}

#video-upload-input {
	display: none;
}

#upload-description {
	padding: 3px;
	border-radius: 7px;
}

#upload-selection-container {
	display: flex;
	flex-direction: row;
	gap: 25px;
	justify-content: start;
	align-items: center;
}

#upload-selection-options {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

#upload-change-button {
	width: fit-content;
	background: #5c5c5c;
	padding: 10px;
	border-radius: 14px;
	cursor: pointer;
	border: solid;
	border-color: #767676;
	border-width: 1px;
}

#upload-change-button:hover {
	filter: brightness(1.3);
}

#upload-change-button:active {
	filter: brightness(1.5);
}

#selected-upload {
	border: solid;
	width: 200px;
	height: 200px;
	border-radius: 14px;
	background: #000;
	border-width: 1px;
	border-color: #4f4f4f;
}

#upload-warning {
	align-self: center;
}

#profile-menu {
	display: none;
	flex-direction: column;
	position: absolute;
	width: fit-content;
	height: fit-content;
	border-radius: 14px;
	background: #3e3e3e;
	border: solid;
	border-color: #525252;
	border-width: 1px;
	top: 90px;
	right: 10px;
	overflow: hidden;
	z-index: 1;
}

#profile-menu-info-container {
	display: flex;
	flex-direction: row;
	border: solid;
	border-color: #525252;
	border-width: 1px;
	background: #3e3e3e;
	align-items: center;
	gap: 10px;
	padding: 20px;
	cursor: pointer;
	text-decoration: none;
}

#profile-menu-info-container:hover {
	filter: brightness(1.3);
}

#profile-menu-info-container:active {
	filter: brightness(1.5);
}

#profile-menu-info-image {
	border-radius: 3000px;
	width: 45px;
	aspect-ratio: 1 / 1;
}

#profile-menu-info-text-container {
	display: flex;
	flex-direction: column;
}

#profile-menu-info-name {
	font-size: 15px;
}

#profile-menu-info-username {
	font-size: 14px;
}

#profile-menu-buttons {
	display: flex;
	flex-direction: column;
}

.profile-menu-button {
	text-align: center;
	cursor: pointer;
	border: solid;
	border-color: #525252;
	background: #3e3e3e;
	border-width: 1px;
	padding: 10px;
	text-decoration: none;
}

.profile-menu-button:hover {
	filter: brightness(1.3);
}

.profile-menu-button:active {
	filter: brightness(1.5);
}

#editor-photo-outer-container {
	display: flex;
	flex-direction: column;
	width: fit-content;
	align-self: center;
	cursor: pointer;
	gap: 10px;
}

#editor-photo-inner-container {
	display: flex;
	position: relative;
	border: none;
	justify-content: center;
	align-items: center;
}

#editor-photo-outer-container:hover {
	#editor-selected-photo {
		filter: brightness(0.5);
	}

	#editor-selected-photo-icon {
		display: block;
	}
}

#editor-photo-input {
	display: none;
}

#editor-selected-photo {
	border-radius: 3000px;
	cursor: pointer;
	width: 100px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

#editor-selected-photo-icon {
	display: none;
	position: absolute;
	width: 30px;
	//background: #282828;
}

#editor-photo-text {
	text-align: center;
}

#editor-bio-input {
	height: 100px;
	border-radius: 15px;
	padding: 7px 20px;
}

#feed-exit-button {
	display: none;
	width: 40px;
	position: absolute;
	cursor: pointer;
	margin: 15px;
	background: #3e3e3e;
	border-radius: 3000px;
	padding: 5px;
	border: solid;
	border-width: 1px;
	border-color: #525252;
	margin-top: 100px;
}

#feed-exit-button:hover {
	filter: brightness(1.3);
}

#feed-exit-button:active {
	filter: brightness(1.5);
}

.loading-image-container {
	display: none;
	position: absolute;
	border: none;
	margin: auto;
	justify-content: center;
	align-items: center;
}

.loading-image {
	width: 100px;
	animation: rotateLoading 3s linear infinite;
}

#main-loading-image-container {
	display: none;
	align-self: center;
	top: calc(50% - 50px);
}

#profile-heading-loading-image-container {
	display: none;
	position: absolute;
	border: none;
	top: 0px;
	width: 100%;
	height: 100%;
}

#profile-heading-loading-image {
	width: 60px;
}

.play-image-container {
	display: none;
	position: absolute;
	border: none;
	margin: auto;
	justify-content: center;
	align-items: center;
}

.play-image {
	width: 100px;
}

@keyframes rotateLoading {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.report-selection {
	display: flex;
	flex-direction: column;
	gap: 15px;
	font-size: 17px;
}

.report-selection > * {
	cursor: pointer;
	background: #5c5c5c;
	border: solid;
	border-width: 1px;
	border-color: #767676;
	border-radius: 14px;
	padding: 10px;
}

.report-selection > *:hover {
	filter: brightness(0.8);
}

.report-selection > *:active {
	filter: brightness(1);
}

.google-button-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.apple-signin-button {
	height: 40px;
	width: 302px;
	align-self: center;
	cursor: pointer;
}

#notifications-container {
	display: none;
	position: absolute;
	flex-direction: column;
	width: 480px;
	max-width: 100%;
	height: 450px;
	max-height: 100%;
	border-radius: 20px;
	overflow-x: hidden;
	overflow-y: auto;
	border: solid;
	border-width: 1px;
	background: #3e3e3e;
	border-color: #525252;
	top: 90px;
	right: 10px;
	z-index: 1;
}

#notifications-container::-webkit-scrollbar {
	display: none;
  width: 5px;
	background: inherit;
	border-radius: 10px;
	border: none;
	border-width: 1px;
	border-color: #525252;
}

#notifications-container::-webkit-scrollbar-thumb {
	background: #818181;
	border-radius: 10px;
}

#notifications-container::-webkit-scrollbar-thumb:hover {
	background: #919191;
}

#notifications-container::-webkit-scrollbar-thumb:active {
	background: #a1a1a1;
}

#notifications-container > :nth-child(2) {
	margin-top: 68px;
}

#notification-title {
	display: flex;
	position: fixed;
	justify-content: center;
	align-items: center;
	width: inherit;
	max-width: inherit;
	font-size: 25px;
	//background: #282828;
	padding: 15px 0px;
	border-radius: 20px 20px 0px 0px;
	border: none;
	border-width: 1px;
	border-color: #525252;
	border-bottom: none;
	pointer-events: none;
	backdrop-filter: blur(3px);
}

.notification {
	display: flex;
	flex-direction: row;
	width: 100%;
	height: 100px;
	border: none;
	border-width: 1px;
	border-color: #525252;
	background: #3e3e3e;
	align-items: center;
	cursor: pointer;
	gap: 20px;
	padding: 20px;
}

.notification:hover {
	background: #525252;
}

.notification:active {
	background: #4e4e4e;
}

.notification-data {
	font-size: 14px;
	width: 270px;
}

.notification-text-link {
	text-decoration: none;
}

.notification-text-link:hover {
	text-decoration: underline;
}

.notification-text-link:active {
	text-decoration: none;
}

.notification-date {
	color: #a1a1a1;
}

.notification-profile-picture {
	border-radius: 3000px;
	height: 50px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.notification-video-thumbnail {
	border-radius; 0px;
	height: 50px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 7px;
}

.notification-follow-button {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #2196f3;
	cursor: pointer;
}

.notification-follow-button:hover {
	filter: brightness(1.2);
}

.notification-follow-button:active {
	filter: brightness(1);
}

.notification-read-state {
	height: 10px;
	aspect-ratio: 1 / 1;
	background: #2196f3;
	border-radius: 3000px;
	margin-left: auto;
}

#sorter {
	display: flex;
	flex-direction: row;
	gap: 15px;
	margin: 30px 15px 15px 15px;
	justify-content: center;
}

.sorter-button {
	border: solid;
	border-width: 1px;
	border-color: #525252;
	background: #3e3e3e;
	padding: 7px 17px;
	border-radius: 10px;
	cursor: pointer;
}

.sorter-button-selected {
	background: #fff;
	color: #282828;
	border-color: #aeaeae;
}

.sorter-button:hover {
	filter: brightness(0.9);
}

.sorter-button:active {
	filter: brightness(1);
}

#profile-picture-big {
	display: none;
	position: fixed;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background: rgb(0 0 0 / 0.9);
	z-index: 1;
	justify-content: center;
	align-items: center;
}

#profile-picture-big-exit-button {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 47px;
	cursor: pointer;
	border: solid;
	border-color: #767676;
	background: #5c5c5c;
	border-radius: 3000px;
	padding: 8px;
	border-width: 1px;
	margin: 15px;
	z-index: 1;
}

#profile-picture-big-exit-button:hover {
	filter: brightness(1.3);
}

#profile-picture-big-exit-button:active {
	filter: brightness(1.5);
}

#profile-picture-big-image-container {
	border-radius: 3000px;
}

#profile-picture-big-image {
	border-radius: 3000px;
	-webkit-user-drag: none;
	height: calc(var(--vh) * 50);
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

#settings-popup-container {
	display: none;
}

#settings-popup {
	display: flex;
	flex-direction: column;
	padding: 30px;
	border-radius: 25px;
	border: solid;
	border-width: 1px;
	background: #3e3e3e;
	border-color: #525252;
	max-height: calc(var(--vh) * 90);
	max-width: 100%;
}

#settings-exit-button-container {
	justify-content: flex-end;
	gap: 15px;
}

#settings-exit-button {
	flex: 0 0 auto;
}

#settings-mobile-options {
	display: none;
	flex-direction: row;
	width: 100px;
	overflow-x: auto;
	flex: 1 1 auto;
	width: 0px;
}

#settings-mobile-options::-webkit-scrollbar {
	display: none;
}

.settings-mobile-option {
	display: flex;
	flex-direction: row;
	cursor: pointer;
	border: solid;
	border-width: 1px;
	background: #3e3e3e;
	border-color: transparent;
	gap: 5px;
	border-radius: 14px;
	padding: 5px 10px;
	flex: 0 0 auto;
}

.settings-mobile-option-current {
	border-color: #525252;
	filter: brightness(1.3);
}

.settings-mobile-option:hover {
	border-color: #525252;
}

.settings-mobile-option:active {
	border-color: #949494;
}

.settings-mobile-option-image {
	height: 35px;
}

.settings-mobile-option-text {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 15px;
}

#settings-wrapper {
	display: flex;
	flex-direction: row;
	gap: 80px;
	max-height: calc(var(--vh) * 90 - 115px);
}

#settings-sidebar {
	display: flex;
	flex-direction: column;
	gap: 15px;
	width: 191px;
}

#settings-sidebar-title {
	font-size: 27px;
}

#settings-sidebar-options {
	display: flex;
	flex-direction: column;
}

.settings-sidebar-option {
	display: flex;
	flex-direction: row;
	cursor: pointer;
	border: solid;
	border-width: 1px;
	background: #3e3e3e;
	border-color: transparent;
	gap: 5px;
	border-radius: 14px;
	padding: 5px 10px;
}

.settings-sidebar-option-current {
	border-color: #525252;
	filter: brightness(1.3);
}

.settings-sidebar-option:hover {
	border-color: #525252;
}

.settings-sidebar-option:active {
	border-color: #949494;
}

.settings-sidebar-option-image {
	height: 35px;
}

.settings-sidebar-option-text {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 15px;
}

#settings-main {
	display: flex;
	flex-direction: column;
	width: 500px;
}

#settings-main-title {
	font-size: 27px;
}

#settings-main-content-container {
	overflow-y: auto;
	height: 550px;
	padding-top: 15px;
	padding-right: 15px;
}

#settings-main-edit-profile {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

#settings-main-edit-profile-photo-outer-container {
	display: flex;
	flex-direction: column;
	width: fit-content;
	align-self: center;
	cursor: pointer;
	gap: 10px;
}

#settings-main-edit-profile-photo-inner-container {
	display: flex;
	position: relative;
	border: none;
	justify-content: center;
	align-items: center;
}

#settings-main-edit-profile-photo-outer-container:hover {
	#settings-main-edit-profile-selected-photo {
		filter: brightness(0.5);
	}

	#settings-main-edit-profile-selected-photo-icon {
		display: block;
	}
}

#settings-main-edit-profile-photo-input {
	display: none;
}

#settings-main-edit-profile-selected-photo {
	border-radius: 3000px;
	cursor: pointer;
	width: 100px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

#settings-main-edit-profile-selected-photo-icon {
	display: none;
	position: absolute;
	width: 30px;
	//background: #282828;
}

#settings-main-edit-profile-photo-text {
	text-align: center;
}

#settings-main-edit-profile-bio-input {
	height: 100px;
	border-radius: 15px;
	padding: 7px 20px;
}

#settings-blocked {
	display: none;
	flex-direction: column;
	gap: 15px;
	padding: 15px 0px;
}

.settings-blocked-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.settings-blocked-data {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 15px;
}

.settings-blocked-image {
	border-radius: 3000px;
	height: 35px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.settings-blocked-text-container {
	font-size: 14px;
}

.settings-blocked-username {
	font-weight: bold;
}

.settings-blocked-button {
	background: #5c5c5c;
	border: solid;
	border-width: 1px;
	border-color: #767676;
	border-radius: 14px;
	padding: 8px;
	cursor: pointer;
	margin-right: 15px;
}

.settings-blocked-button:hover {
	filter: brightness(1.3);
}

.settings-blocked-button:active {
	filter: brightness(1.5);
}

#settings-manage-account {
	display: none;
	flex-direction: column;
	gap: 15px;
	padding: 15px 0px;
}

#settings-manage-account-delete {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

#settings-manage-account-delete-title {
	font-size: 22px;
}

#settings-manage-account-delete-button {
	font-size: 16px;
	width: fit-content;
	padding: 8px;
	border-radius: 14px;
	cursor: pointer;
	border: none;
	border-width: 1px;
	border-color: #f00;
	color: #f00;
}

#settings-manage-account-delete-button:hover {
	filter: brightness(1.3);
}

#settings-manage-account-delete-button:active {
	filter: brightness(1);
}

#confirm-delete-popup {
	filter: brightness(1.3);
}

#confirm-delete-description {
	margin: 15px 0px;
}

#confirm-delete-submit-button {
	background: transparent;
	border-color: #f00;
	color: #f00;
}

#confirm-delete-submit-button:hover {
	background: #f00;
	border-color: #ff9999;
	color: #fff;
}

#confirm-delete-submit-button:active {
	background: #f00;
	border-color: #ff9999;
	color: #fff;
	filter: brightness(0.7);
}

@media (pointer: coarse) {
	.fullscreen-control {
		display: none;
	}
}

@media (max-width: 550px) {
	.video-overlay {
		padding-right: 10px;
	}

	#profile-heading {
		padding: 15px;
	}

	#heading-picture {
		height: 80px;
	}

	#heading-main-content-wrapper {
		gap: 15px;
	}

	#heading-main-content {
		gap: 5px;
	}

	#heading-name {
		font-size: 18px;
	}

	#heading-username {
		font-size: 14px;
	}

	#heading-stats {
		gap: 30px;
		font-size: 14px;
	}

	#notifications-container {
		right: unset;
	}

	#settings-mobile-options {
		display: flex;
	}

	#settings-sidebar {
		display: none;
	}

	#settings-exit-button-container {
		justify-content: space-between;
	}
}
