
/* ! lightbox.css ! */
/* 🚀 2025 MODERN LIGHTBOX - Clean and minimal */
.lightbox {
	position: fixed;
	inset: 0;
	background: #000;
	z-index: 20000;
	display: none;
	/* JavaScript controls animations directly with inline styles */
}

.lightbox-content {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.lightbox-image {
	width: 100%;
	height: 100%;
	object-fit: contain;
	/* 🚀 2025 FULL SCREEN: Снимките се показват пълни без изрязване */
	opacity: 1;
	touch-action: none;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	pointer-events: none;
}

/* 🎯 КОНТЕКСТНО МЕНЮ: More Options Button */
.lb-options-btn {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 44px;
	height: 44px;
	background: rgba(0, 0, 0, 0.6);
	border: none;
	border-radius: 50%;
	color: white;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	z-index: 21000;
	transition: all 0.2s ease;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.lb-options-btn:hover {
	background: rgba(0, 0, 0, 0.8);
	transform: scale(1.1);
}

.lb-options-btn .lb-icon {
	font-weight: bold;
	line-height: 1;
}

/* 🎯 КОНТЕКСТНО МЕНЮ: Dropdown */
.lb-dropdown {
	position: absolute;
	top: 70px;
	right: 20px;
	background: rgba(0, 0, 0, 0.9);
	border-radius: 12px;
	padding: 8px 0;
	min-width: 200px;
	z-index: 21001;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px) scale(0.95);
	transition: all 0.2s ease;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.lb-dropdown.show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0) scale(1);
}

/* 🎯 КОНТЕКСТНО МЕНЮ: Dropdown Items */
.lb-dropdown-item {
	width: 100%;
	padding: 12px 16px;
	background: none;
	border: none;
	color: white;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	transition: background-color 0.2s ease;
}

.lb-dropdown-item:hover {
	background: rgba(255, 255, 255, 0.1);
}

.lb-dropdown-item .lb-icon {
	font-size: 16px;
	width: 20px;
	text-align: center;
}

.lb-dropdown-item .lb-text {
	flex: 1;
	text-align: left;
}

/* 🎯 КОНТЕКСТНО МЕНЮ: Specific item styles */
.lb-set-profile:hover {
	background: rgba(59, 130, 246, 0.2);
}

.lb-delete:hover {
	background: rgba(239, 68, 68, 0.2);
}

/* ! login.css ! */
.page-list .forgot-password-link {
	display: block;
	text-align: center;
	color: var(--text-secondary);
	font-size: 14px;
	text-decoration: none;
	margin-top: 0.35rem;
	transition: color 0.2s ease;
	border: none !important;
}

.page-list .forgot-password-link:hover {
	color: var(--accent-blue);
}












.social-buttons-group {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	margin: 0.15rem 0;
	padding: 0 0.5rem;
}

/* Facebook бутон */
.fb-login-button,
#facebook-register-button {
	width: 100%;
	height: 36px;
	padding: 0 12px;
	background: #124C8F;
	border: 1px solid rgba(59, 130, 246, 0.5);
	border-radius: 8px;
	color: white;
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.fb-login-button:hover,
#facebook-register-button:hover {
	background: #124C8F;
	border-color: rgba(59, 130, 246, 0.3);
	box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.1);
	transform: translateY(-1px);
}

.fb-login-button:active,
#facebook-register-button:active {
	transform: translateY(0);
}

/* Apple бутон */
.sign-in-with-apple-button,
#apple-register-button {
	width: 100%;
	height: 36px;
	padding: 0 12px;
	background: #000;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	color: white;
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.sign-in-with-apple-button:hover,
#apple-register-button:hover {
	border-color: rgba(255, 255, 255, 0.2);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1);
	transform: translateY(-1px);
}

.sign-in-with-apple-button:active,
#apple-register-button:active {
	transform: translateY(0);
}

/* Общи стилове за бутоните */
.fb-button-content,
.apple-button-content {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 16px;
}

.fb-button-text,
.apple-button-text {
	color: #FFFFFF;
	font-size: 16px;
	font-weight: 500;
	font-family: -apple-system, system-ui, BlinkMacSystemFont;
	letter-spacing: 0.2px;
	text-transform: none;
}

.fb-icon,
.apple-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin-right: 4px;
}

.fb-icon {
	fill: #ffffff;
}

.apple-icon {
	fill: #ffffff;
}

.page-form-content {
	flex: 1;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	padding: 0.5rem;
	gap: 0.35rem;
	max-width: 400px;
	margin: 0 auto;
}

/* Оптимизация на input полетата 
.city-input-wrapper {
	margin-top: 0.25rem;
}

.city-input {
	padding: 0.6rem 0.75rem;
}
*/


/* Стилове за регистрационния бутон */
.register-button {
	width: 100%;
	height: 36px;
	background: none;
	border: 2px solid var(--accent-blue);
	border-radius: 6px;
	color: var(--accent-blue);
	font-size: 16px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.2s ease;
	margin-top: 0.75rem;
}

.register-button:hover {
	background: var(--accent-blue);
	color: white;
}




/* Стилове за съобщението за нерегистрирани потребители */
.not-registered-message {
	text-align: center;
	padding: 0.5rem;
}

.not-registered-message p {
	margin: 0.5rem 0;
}

.not-registered-message strong {
	color: var(--accent-blue);
}

.info-buttons {
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	margin-top: 1rem;
}

.register-now-button {
	background: var(--accent-blue);
	color: white;
	border: none;
	padding: 0.5rem 1rem;
	border-radius: 4px;
	cursor: pointer;
	font-weight: 500;
}

.cancel-button {
	background: var(--background-secondary);
	color: var(--text-primary);
	border: none;
	padding: 0.5rem 1rem;
	border-radius: 4px;
	cursor: pointer;
}

.register-now-button:hover {
	background: var(--accent-blue-dark);
}

.cancel-button:hover {
	background: var(--background-tertiary);
}

/* ! register-step5-upload.css ! */


/* ! register.css ! */
/* Registration Progress */
.registration-progress {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 1rem 0;
}

.progress-step {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: rgba(59, 130, 246, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--text-secondary);
}

.progress-line {
	flex: 1;
	height: 2px;
	background: rgba(59, 130, 246, 0.1);
	margin: 0 8px;
}

.progress-step.active {
	background: var(--accent-blue);
	color: white;
}

.progress-step.completed {
	background: var(--success-color);
	color: white;
}

.progress-line.completed {
	background: var(--success-color);
}

/* ! set-language.css ! */
.flag {
	font-size: 24px;
}

.lang-name {
	font-size: 16px;
}

/* ! custom-scroll.css ! */


/* ! page.css ! */
/* Container за скролващото съдържание */
.page-list {
	flex: 1;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	display: flex;
	flex-direction: column;
	position: relative;
	gap: 8px;
	will-change: transform;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

/* Header остава фиксиран */
.page-header {
	background: linear-gradient(90deg,
			var(--bg-secondary) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	position: relative;
	padding: 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
}

.page-header::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg,
			transparent,
			rgba(59, 130, 246, 0.3),
			transparent);
}

.page-header::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg,
			transparent,
			rgba(59, 130, 246, 0.5),
			transparent);
	animation: gradientMove 3s linear infinite;
}



.page-title {
	display: flex;
	align-items: center;
	gap: 16px;
}

.page-title span {
	font-size: 24px;
	filter: drop-shadow(0 2px 4px rgba(255, 215, 0, 0.2));
}

/* Стил за под-хедър */
.page-header.sub-header {
	height: 54px;
	padding: 12px 16px;
	/* По-малък padding */
}

.page-header.sub-header .page-title span {
	font-size: 18px;
	/* По-малка иконка */
}

.page-header.sub-header .page-title h2 {
	font-size: 14px;
	/* По-малък текст */
	font-weight: 500;
}

/* Стилове за формата за разширено търсене */
.page-form-content {
	flex: 1;
	padding: 20px;
	overflow-y: auto;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 20px;
	background: var(--bg-primary);
	width: 90%;
	/* Базова ширина */
	max-width: 420px;
	/* Максимална ширина за по-големи екрани */
	min-width: 280px;
	/* Минимална ширина за малки екрани */
	margin: 0 auto;

	/* Стилове за всички текстови елементи */
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		color: var(--text-primary);
		margin-bottom: 1rem;
		font-weight: 500;
	}

	p {
		color: var(--text-primary);
		line-height: 1.6;
		margin-bottom: 1rem;
	}

	/* Стилове за списъци */
	ul,
	ol {
		list-style: none;
		padding-left: 0;
		margin: 1rem 0;
	}

	li {
		margin-bottom: 0.8rem;
		padding-left: 1.5rem;
		position: relative;
		color: var(--text-primary);
	}

	li::before {
		content: '•';
		color: var(--accent-blue);
		position: absolute;
		left: 0.5rem;
		top: 0;
	}

	/* Стилове за линкове */
	a {
		color: var(--accent-blue);
		text-decoration: none;
		position: relative;
		transition: all 0.3s ease;
		padding-bottom: 2px;
	}

	a::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: var(--accent-blue);
		transform: scaleX(0);
		transform-origin: right;
		transition: transform 0.3s ease;
	}


	/* Стилове за strong и emphasis */
	strong,
	b {
		color: var(--accent-blue);
		font-weight: 500;
	}

	em,
	i {
		color: var(--text-secondary);
		font-style: italic;
	}

	/* Стилове за таблици */
	table {
		width: 100%;
		border-collapse: collapse;
		margin: 1rem 0;
	}

	th,
	td {
		padding: 0.8rem;
		text-align: left;
		border-bottom: 1px solid rgba(59, 130, 246, 0.1);
		color: var(--text-primary);
	}

	th {
		font-weight: 500;
		color: var(--accent-blue);
		background: rgba(59, 130, 246, 0.05);
	}

	/* Стилове за code и pre */
	code,
	pre {
		background: rgba(59, 130, 246, 0.05);
		padding: 0.2rem 0.4rem;
		border-radius: 4px;
		font-family: monospace;
		color: var(--text-primary);
	}

	pre {
		padding: 1rem;
		overflow-x: auto;
		margin: 1rem 0;
	}

	/* Стилове за blockquote */
	blockquote {
		border-left: 3px solid var(--accent-blue);
		padding-left: 1rem;
		margin: 1rem 0;
		color: var(--text-secondary);
		font-style: italic;
	}

	/* Стилове за hr */
	hr {
		border: none;
		height: 1px;
		background: linear-gradient(90deg,
				transparent,
				rgba(59, 130, 246, 0.2),
				transparent);
		margin: 2rem 0;
	}

	/* Стилове за small */
	small {
		color: var(--text-secondary);
		font-size: 0.9em;
	}
}

/* Responsive adjustments */
@media (max-width: 480px) {
	.page-form-content {
		width: 95%;
		/* Малко по-широко на мобилни устройства */
		padding: 15px;

		h1,
		h2,
		h3,
		h4,
		h5,
		h6 {
			font-size: 90%;
		}

		p,
		li {
			font-size: 0.9rem;
		}

		table {
			font-size: 0.85rem;
		}
	}
}

/* Подобрен дизайн на групите */
.page-form-group {
	margin-bottom: 0.5rem;
	position: static !important;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.05) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border: 1px solid rgba(59, 130, 246, 0.1);
	border-radius: 16px;
	padding: 20px;
	transition: all 0.3s ease;
	overflow: visible;
	margin-bottom: 1.5rem;
	width: 100%;
	box-sizing: border-box;
}

.page-form-group:hover {
	border-color: rgba(59, 130, 246, 0.2);
	transform: translateX(4px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.page-form-group::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background: linear-gradient(to bottom, transparent, var(--accent-blue), transparent);
	opacity: 0;
	transition: opacity 0.3s ease;
}

.page-form-group:hover::before {
	opacity: 1;
}

/* Подобрен дизайн на етикетите */
.page-form-label {
	color: var(--text-secondary);
	font-size: 11px;
	font-weight: 500;
	margin-bottom: 16px;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.page-form-label::before {
	content: '🔍';
	font-size: 14px;
}

/* Подобрен дизайн на избора на пол */
.gender-options {
	display: flex;
	gap: 20px;
	padding: 12px;
	background: rgba(59, 130, 246, 0.05);
	border-radius: 12px;
}

.gender-option {
	flex: 1;
	padding: 12px;
	border-radius: 8px;
	transition: all 0.3s ease;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: rgba(59, 130, 246, 0.05);
}

.gender-option:hover {
	background: rgba(59, 130, 246, 0.1);
	transform: translateY(-2px);
}

.gender-option input:checked+.gender-checkbox {
	border-color: var(--accent-blue);
	background: rgba(59, 130, 246, 0.2);
	transform: scale(1.1);
}

.gender-label {
	font-size: 12px;
	font-weight: 500;
}

.gender-label.male::before {
	content: '👨';
	margin-right: 6px;
}

.gender-label.female::before {
	content: '👩';
	margin-right: 6px;
}

/* Подобрен дизайн на възрастовия диапазон */
.age-range-inputs {
	display: flex;
	align-items: center;
	gap: 12px;
	background: rgba(59, 130, 246, 0.05);
	padding: 12px;
	border-radius: 12px;
}

.age-input {
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 8px;
	padding: 8px 12px;
	color: var(--text-primary);
	font-size: 12px;
	width: 100%;
	text-align: center;
}

.age-separator {
	color: var(--text-secondary);
	font-size: 16px;
	margin: 0 4px;
	opacity: 0.5;
}

/* Input Wrapper и Валидация */
.input-wrapper {
	position: relative;
	transition: all 0.3s ease;
	margin-bottom: 0;
	width: 100%;
}

/* Когато има грешка, добавяме padding отдолу за съобщението */
.input-wrapper.error {
	padding-bottom: 24px;
	/* Място за съобщението за грешка */
}

.input-wrapper.error input {
	border-color: var(--error-color) !important;
	background-color: var(--error-bg);
}

.field-error {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	font-size: 11px;
	color: var(--error-color);
	animation: fadeIn 0.2s ease;
}

/* Специален стил за verification code грешки */
.verification-code-input .field-error {
	text-align: center;
	position: static;
	margin-top: 12px;
}

/* Подобрен hover ефект на input полетата */
.input-wrapper:hover input:not(:focus):not([aria-invalid="true"]) {
	border-color: rgba(59, 130, 246, 0.2);
}

/* Стилове за disabled състояние */
.input-wrapper input:disabled {
	opacity: 0.7;
	cursor: not-allowed;
	background: rgba(255, 255, 255, 0.05);
}

/* Links and Buttons */
.form-links {
	text-align: center;
	margin: 1rem 0;
}

.form-links a {
	color: var(--text-secondary);
	text-decoration: none;
	font-size: 14px;
	transition: color 0.2s ease;
}

.form-links a:hover {
	color: var(--accent-blue);
}

/* Footer Links */
.footer-links {
	margin-top: auto;
	padding: 0.5rem 0;
	text-align: center;
	font-size: 0.75rem;
	color: var(--text-secondary);
}

.footer-links-row {
	margin: 0.15rem 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
}

.footer-links a {
	color: var(--text-secondary);
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer-links a:hover {
	color: var(--accent-blue);
}

.separator-dot {
	color: var(--text-secondary);
	opacity: 0.5;
}

/* Language Options */
.lang-switch {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}

.language-options {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 1rem 0;
}

.language-option {
	padding: 12px;
	border: 1px solid rgba(59, 130, 246, 0.1);
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.language-option:hover {
	background: rgba(59, 130, 246, 0.05);
	border-color: var(--accent-blue);
}

/* Hint Styles */
.warning-hint,
.info-hint,
.error-hint,
.success-hint {
	margin-top: 16px;
	padding: 16px;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	width: 100%;
	box-sizing: border-box;
	border-radius: 8px;
}

/* Warning Style */
.warning-hint {
	background: rgba(255, 193, 7, 0.1);
	border: 1px solid rgba(255, 193, 7, 0.2);
}

.warning-hint::before {
	content: '⚠️';
	font-size: 20px;
	color: #ffc107;
}

/* Info Style */
.info-hint {
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
}

.info-hint::before {
	content: 'ℹ️';
	font-size: 20px;
	color: var(--accent-blue);
}

/* Error Style */
.error-hint {
	background: rgba(239, 68, 68, 0.1);
	border: 1px solid rgba(239, 68, 68, 0.2);
}

.error-hint::before {
	content: '❌';
	font-size: 20px;
	color: var(--error-color);
}

/* Success Style */
.success-hint {
	background: rgba(34, 197, 94, 0.1);
	border: 1px solid rgba(34, 197, 94, 0.2);
}

.success-hint::before {
	content: '✅';
	font-size: 20px;
	color: var(--success-color);
}

/* Общ стил за текста в съобщенията */
.warning-hint p,
.info-hint p,
.error-hint p,
.success-hint p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

/* Verification Code Input Styles */
.verification-message {
	text-align: center;
	margin-bottom: 24px;
}

.verification-message p {
	color: var(--text-secondary);
	font-size: 14px;
	line-height: 1.5;
}

.verification-code-input {
	display: flex;
	gap: 12px;
	justify-content: center;
	margin: 20px 0;
}

.verification-code-input .code-digit {
	text-align: center;
	font-size: 24px;
	font-weight: 600;
}



/* Error state for verification code */
.input-wrapper.error .verification-code-input .code-digit {
	background: rgba(255, 68, 68, 0.05);
}

/* Resend code link styles */
.resend-code {
	color: var(--text-secondary);
	text-decoration: none;
	font-size: 14px;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.resend-code:hover:not(.disabled) {
	color: var(--accent-blue);
	transform: translateX(4px);
}

.resend-code.disabled {
	opacity: 0.6;
	cursor: not-allowed;
	pointer-events: none;
	color: var(--text-secondary);
}

.resend-code.loading {
	opacity: 0.7;
	cursor: wait;
	pointer-events: none;
}

/* Запазваме иконката и при disabled състояние */
.resend-code::before {
	content: '🔄';
	font-size: 16px;
	opacity: 0.8;
}

.resend-code.loading::before {
	content: '⌛';
}

.email-sent-to {
	color: var(--text-secondary);
	font-size: 13px;
	margin-top: 8px;
}

.email-sent-to strong {
	color: var(--accent-blue);
	font-weight: 500;
}

.toggle-password {
	position: absolute;
	right: 12px;
	top: 0px;
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	opacity: 0.7;
	transition: opacity 0.3s ease;
	z-index: 2;
}

.toggle-password:hover {
	opacity: 1;
}

.toggle-password .icon {
	font-size: 18px;
	display: flex;
	align-items: center;
}

/* Add these styles */
.birthdate-inputs {
	display: flex;
	gap: 8px;
}

/* За input-wrapper елементите вътре в birthdate-inputs */
.birthdate-inputs .input-wrapper {
	flex: 1;
	margin-bottom: 0 !important;
}

/* Специално позициониране на error съобщението за birthdate-inputs */
.birthdate-inputs .field-error {
	position: absolute;
	left: 0;
	width: 100%;
	font-size: 11px;
	color: var(--error-color);
	text-align: left;
}

/* Update avatar preview styles */
.avatar-preview {
	width: 120px;
	height: 120px;
	margin: 0 auto;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid rgba(59, 130, 246, 0.2);
	background: rgba(59, 130, 246, 0.05);
}

.avatar-preview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gender-options.error {
	border: 1px solid var(--error-color, #ff4444);
	background-color: var(--error-bg, rgba(255, 68, 68, 0.05));
}

.gender-error-wrapper {
	margin-top: 27px;
}

/* Profile Picture Upload Styles */
.profile-picture-upload-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
}

.profile-picture-preview {
	width: 140px;
	height: 140px;
	border-radius: 50%;
	overflow: hidden;
	border: 3px solid rgba(59, 130, 246, 0.2);
	background: rgba(59, 130, 246, 0.05);
	position: relative;
	transition: all 0.3s ease;
	cursor: pointer;
}



.profile-picture-preview img,
.profile-picture-preview svg {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.upload-controls {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.upload-button {
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 12px;
	padding: 12px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}



.upload-button .button-icon {
	font-size: 20px;
}

.button-text {
	font-size: 14px;
	font-weight: 500;
}

/* Submit и Skip бутони */
.skip-button {
	width: 100%;
	padding: 14px;
	border-radius: 12px;
	border: none;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 8px;
}

.skip-button {
	background: rgba(59, 130, 246, 0.1);
	color: var(--text-primary);
}



/* Стил за forgot password бутона */
.forgot-password-link {
	background: none;
	border: none;
	color: var(--text-secondary);
	font-size: 14px;
	padding: 8px 12px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	justify-content: center;
	margin: 12px 0;
	/* Добавяме стилове за по-тънки и разширени букви */

}

/* Блокиране на плъзгане за restricted views */
.activity-view.no-slide {
	touch-action: none !important;
	user-select: none !important;
	-webkit-user-select: none !important;
	-webkit-touch-callout: none !important;
	-webkit-tap-highlight-color: transparent !important;
	transform: none !important;
	transition: none !important;
	pointer-events: auto !important;
	position: fixed !important;
	width: 100% !important;
	height: 100% !important;
	overscroll-behavior: none !important;
	overflow: auto !important;
	-webkit-overflow-scrolling: touch !important;
}

/* Позволяваме само вертикално скролиране */
.activity-view.no-slide .page-form-content {
	touch-action: pan-y !important;
	overscroll-behavior-y: auto !important;
}

/* Стилове за валидация */
.input-wrapper.validating {
	position: relative;
}

/* Подобрен стил за валидация със спинър */
.input-wrapper.validating::after {
	content: '';
	position: absolute;
	right: 12px;
	/* Променяме позиционирането да е спрямо input полето */
	top: 16px;
	/* Фиксирана позиция от горния край на input-a */
	width: 16px;
	height: 16px;
	border: 2px solid rgba(59, 130, 246, 0.3);
	border-top-color: var(--primary);
	border-radius: 50%;
	animation: rotate 0.6s linear infinite;
	/* Премахваме transform тук, тъй като вече позиционираме спрямо input-a */
}


.input-wrapper.validating input {
	padding-right: 36px;
	/* Оставяме място за спинъра */
}

/* Добавяме transition за плавна поява/изчезване */
.input-wrapper::after {
	transition: opacity 0.2s ease;
}

.input-wrapper:not(.validating)::after {
	opacity: 0;
}

/* ========================================
   PROFILE VIEW STYLES
   ======================================== */

/* Profile Slide Container */
.profile-slide-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 1000;
	pointer-events: none;
}

/* Profile Slide */
.profile-slide {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: var(--bg-primary);
	z-index: 1001;
	display: grid;
	grid-template-columns: 45% 55%;
	transform: translateX(100%);
	transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	will-change: transform;
	pointer-events: auto;
	overflow: hidden;
}

/* Profile Slide Show Animation */
.profile-slide[style*="translateX(0px)"] {
	transform: translateX(0) !important;
}

/* Close Button */
.profile-slide>.close-button {
	margin-top: 9px;
	margin-left: 9px;
}

/* Base Layout */
.profile-view {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: var(--bg-primary);
	z-index: 1000;
	grid-template-columns: 45% 55%;
	transform: translateX(30%);
	transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: transform;
}

.profile-view.show {
	transform: translateX(0);
	display: grid;
}

.profile-view.reset {
	transform: translateX(30%) !important;
	transition: none !important;
}

/* Sidebar Styles */
.profile-sidebar {
	padding: 24px 16px;
	background: linear-gradient(45deg,
			var(--bg-secondary),
			rgba(18, 20, 28, 0.95),
			var(--bg-secondary));
	background-size: 200% 200%;
	animation: gradientBG 15s ease infinite;
	overflow-y: auto;
	border-right: 1px solid rgba(255, 255, 255, 0.05);
}

/* Main Content Area */
.profile-main {
	background: var(--bg-primary);
	overflow-y: auto;
	padding: 16px;
	position: relative;
}

/* Profile Header */
.profile-header {
	text-align: center;
	margin-bottom: 32px;
	margin-top: 45px;
}

.profile-avatar {
	position: relative;
	width: 100px;
	height: 100px;
	margin: 0 auto;
	border-radius: 50%;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

.profile-avatar::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	padding: 3px;
	background: linear-gradient(135deg, var(--accent-blue), var(--accent-teal));
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

.profile-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.profile-status-indicator {
	position: absolute;
	bottom: 4px;
	right: 4px;
	width: 12px;
	height: 12px;
	background: #22c55e;
	border-radius: 50%;
	border: 2px solid var(--bg-secondary);
	box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.2);
}

.profile-name-info {
	margin-top: 12px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.profile-fullname {
	font-size: 16px;
	font-weight: 600;
	color: var(--text-primary);
	margin-bottom: 4px;
}

.profile-username {
	font-size: 13px;
	background: linear-gradient(135deg, var(--accent-blue), var(--accent-teal));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 600;
}

.profile-status {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 11px;
	color: #22c55e;
	margin-top: 4px;
}

.profile-status::before {
	content: '';
	width: 6px;
	height: 6px;
	background: #22c55e;
	border-radius: 50%;
	animation: pulse 2s infinite;
}

/* Section Styles */
.profile-section {
	background: linear-gradient(135deg,
			rgba(18, 20, 28, 0.95) 0%,
			rgba(26, 32, 46, 0.95) 50%,
			rgba(30, 35, 50, 0.95) 100%);
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 24px;
	border: 1px solid rgba(59, 130, 246, 0.1);
	position: relative;
	overflow: hidden;
	box-shadow:
		inset 0 -25px 20px -20px rgba(0, 0, 0, 0.2),
		inset 0 1px 2px rgba(59, 130, 246, 0.12),
		0 2px 8px rgba(59, 130, 246, 0.08),
		0 0 20px rgba(59, 130, 246, 0.03);
}

.profile-section::before {
	content: '';
	position: absolute;
	inset: 0;
	padding: 1px;
	background: linear-gradient(135deg,
			rgba(59, 130, 246, 0.1),
			rgba(59, 130, 246, 0.3),
			rgba(59, 130, 246, 0.05));
	border-radius: 12px;
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask-composite: exclude;
	opacity: 0;
	z-index: -1;
}

.profile-section::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: linear-gradient(to right,
			transparent,
			rgba(59, 130, 246, 0.15),
			transparent);
}


/* Info Grid */
.info-grid {
	display: grid;
	gap: 6px;
}

.info-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 11px;
	line-height: 1;
}

.info-label {
	color: var(--text-secondary);
}

.info-value {
	color: var(--text-primary);
	font-weight: 500;
}

/* Stats Grid */
.stats-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	background: rgba(59, 130, 246, 0.1);
	border-radius: 12px;
	padding: 16px;
	margin: 16px 0;
	position: relative;
	overflow: hidden;
	text-align: center;
}

/* Премахваме разделителя тъй като сега имаме отделни grid-ове */
.stats-grid::before {
	display: none;
}

.stat {
	text-align: center;
	line-height: 1.2;
	position: relative;
	overflow: hidden;
	padding: 8px;
	border-radius: 8px;
}

/* Хоризонтална декоративна линия */
.stat::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%);
	width: 60%;
	height: 1px;
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(59, 130, 246, 0.3) 50%,
			transparent 100%);
	z-index: 0;
}

/* Декоративни точки */
.stat::after {
	content: '• • •';
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 8px;
	color: rgba(59, 130, 246, 0.3);
	letter-spacing: 4px;
	z-index: 0;
}

/* Различни цветове за коментари */
.stats-grid:nth-child(odd) .stat::before {
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(59, 130, 246, 0.3) 50%,
			transparent 100%);
}

.stats-grid:nth-child(odd) .stat::after {
	color: rgba(59, 130, 246, 0.3);
}

/* За коментари - зелен цвят */
.stats-grid:nth-child(even) .stat::before {
	background: linear-gradient(90deg,
			transparent 0%,
			rgba(34, 197, 94, 0.3) 50%,
			transparent 100%);
}

.stats-grid:nth-child(even) .stat::after {
	color: rgba(34, 197, 94, 0.3);
}

.stat-value {
	font-size: 28px;
	font-weight: 700;
	font-family: 'JetBrains Mono', monospace;
	background: linear-gradient(135deg, var(--accent-blue), var(--accent-teal));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-bottom: 6px;
	position: relative;
	z-index: 1;
	text-shadow: 0 2px 4px rgba(59, 130, 246, 0.2);
}

/* Малко икончета в горния ъгъл */
.stat-value::before {
	position: absolute;
	top: -8px;
	right: -8px;
	font-size: 12px;
	opacity: 0.4;
	z-index: 2;
}

/* Икончета за различните статистики */
.profile-views::before {
	content: '👁️';
}

.comments-count::before {
	content: '💬';
}



.stat-label {
	font-size: 11px;
	color: var(--text-secondary);
	text-transform: lowercase;
	font-weight: 500;
	letter-spacing: 0.5px;
	position: relative;
	z-index: 1;
}

/* Activity Section */
.activity-info {
	display: grid;
	gap: 12px;
}

.profile-view .activity-item {
	background: rgba(255, 255, 255, 0.02);
	padding: 8px 12px;
	border-radius: 8px;
	margin-bottom: 4px;
	display: grid;
	grid-template-rows: auto auto;
	font-size: 11px;
	line-height: 1;
}

.profile-view .activity-label {
	color: var(--text-secondary);
	text-align: left;
}

.profile-view .activity-value {
	margin-top: 5px;
	color: var(--accent-blue);
	text-align: left;
	font-family: 'JetBrains Mono', monospace;
	font-size: 11px;
	letter-spacing: -0.5px;
	background: rgba(59, 130, 246, 0.1);
	padding: 4px 8px;
	border-radius: 4px;
	position: relative;
	overflow: hidden;
}

.profile-view .activity-value::before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: var(--accent-blue);
	transform: scaleX(0);
	transform-origin: left;
}

/* Bio Section */
.bio-text {
	padding: 12px;
	background: rgba(255, 255, 255, 0.02);
	border-radius: 8px;
	line-height: 1.5;
	border-left: 2px solid var(--accent-blue);
	font-size: 11px;
	color: var(--text-secondary);
	margin-top: 4px;
}

/* Gallery */
.profile-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 12px;
	padding: 12px;
}

.gallery-item {
	aspect-ratio: 1;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.9);
}

.gallery-item::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(45deg,
			rgba(59, 130, 246, 0.2),
			rgba(45, 212, 191, 0.2));
	opacity: 0;
	z-index: 1;
	border-radius: 8px;
}

.gallery-item.new::after {
	content: 'НОВО';
	position: absolute;
	top: 8px;
	right: 8px;
	background: var(--accent-blue);
	color: white;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 10px;
	font-weight: 600;
	z-index: 2;
}



.no-images {
	text-align: center;
	padding: 40px 20px;
	color: var(--text-secondary);
	font-size: 12px;
	background: rgba(255, 255, 255, 0.02);
	border-radius: 8px;
	border: 1px dashed rgba(255, 255, 255, 0.1);
}

/* Социални действия */
.social-actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 8px 0;
	position: relative;
	margin-bottom: 24px;
}

.social-actions::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.1) 0%,
			transparent 70%);
	opacity: 0.5;
	z-index: 0;
}

.social-actions .action-button {
	position: relative;
	width: 100%;
	height: auto;
	display: flex;
	align-items: center;
	padding: 12px 16px;
	background: linear-gradient(90deg,
			rgba(18, 20, 28, 0.95) 0%,
			rgba(18, 20, 28, 0.8) 100%);
	border: 1px solid rgba(255, 255, 255, 0.05);
	color: var(--text-secondary);
	cursor: pointer;
	border-radius: 8px;
	font-size: 11px;
	gap: 12px;
	overflow: hidden;
	justify-content: flex-start;
	text-align: left;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	z-index: 1;
}

.social-actions .action-button .icon {
	font-size: 16px;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
	background: linear-gradient(135deg, currentColor 30%, rgba(255, 255, 255, 0.8));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.social-actions .action-button .text {
	font-size: 11px;
	font-weight: 500;
	color: var(--text-primary);
	flex: 1;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}



/* Специфични стилове за всеки бутон */
.social-actions .bookmark-btn {
	background: linear-gradient(90deg,
			rgba(138, 43, 226, 0.15) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(138, 43, 226, 0.3);
	box-shadow: 0 4px 12px rgba(138, 43, 226, 0.2);
}



.social-actions .bookmark-btn .icon {
	color: #8a2be2;
}

/* Активно състояние за харесано - визуално различаване */
.social-actions .bookmark-btn.active {
	background: linear-gradient(90deg,
			rgba(220, 38, 127, 0.2) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(220, 38, 127, 0.4);
	box-shadow: 0 0 15px rgba(220, 38, 127, 0.3);
}



.social-actions .bookmark-btn.active .icon {
	color: #dc267f;
}

.social-actions .bookmark-btn.remove-state .text {
	color: #dc267f;
	font-weight: 600;
}



.social-actions .friend-btn {
	background: linear-gradient(90deg,
			rgba(34, 197, 94, 0.15) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(34, 197, 94, 0.3);
	box-shadow: 0 4px 12px rgba(34, 197, 94, 0.2);
}



.social-actions .friend-btn .icon {
	color: #22c55e;
}

/* Friend Button State Variations */
.social-actions .friend-btn.pending {
	background: linear-gradient(90deg,
			rgba(251, 191, 36, 0.2) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(251, 191, 36, 0.4);
	box-shadow: 0 4px 12px rgba(251, 191, 36, 0.25);
}



.social-actions .friend-btn.pending .icon {
	color: #fbbf24;
}

.social-actions .friend-btn.cancel-state .text {
	color: #fbbf24;
	font-weight: 500;
}

.social-actions .friend-btn.active {
	background: linear-gradient(90deg,
			rgba(249, 115, 22, 0.2) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(249, 115, 22, 0.4);
	box-shadow: 0 4px 12px rgba(249, 115, 22, 0.25);
}



.social-actions .friend-btn.active .icon {
	color: #f97316;
}

.social-actions .friend-btn.remove-friend-state .text {
	color: #f97316;
	font-weight: 500;
}



.social-actions .friend-btn.received .icon {
	color: #22c55e !important;
}

.social-actions .friend-btn.accept-state .text {
	color: #22c55e !important;
	font-weight: 600 !important;
}



/* Loading State for Action Buttons */
.social-actions .action-button.loading {
	opacity: 0.7;
	pointer-events: none;
	cursor: wait;
}

.social-actions .action-button.loading .icon {
	animation: spin 1s linear infinite;
}

.social-actions .action-button.loading .text {
	opacity: 0.8;
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

.social-actions .message-btn {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.18) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-color: rgba(59, 130, 246, 0.35);
	box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
}



.social-actions .message-btn .icon {
	color: var(--accent-blue);
}

/* Добавяме ефект на светене при hover */
.social-actions .action-button::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(circle at var(--x, 50%) var(--y, 50%),
			rgba(255, 255, 255, 0.1) 0%,
			transparent 50%);
	opacity: 0;
	z-index: -1;
}

/* Добавяме ефект на натискане */
/*
.social-actions .action-button:active {
	transform: scale(0.98) translateY(0);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
*/

/* Подобряваме disabled състоянието */
.social-actions .action-button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
	transform: none;
	filter: grayscale(0.5);
}

/* Премахнати анимации за по-добра производителност на мобилни устройства */
.social-actions .action-button {
	opacity: 1;
	transform: translateX(0);
}

/* Override за received state - статичен зелен ефект без анимация */
.social-actions .friend-btn.received {
	opacity: 1 !important;
	transform: translateX(0) !important;
	background: linear-gradient(90deg,
			rgba(34, 197, 94, 0.25) 0%,
			rgba(18, 20, 28, 0.95) 100%) !important;
	border-color: rgba(34, 197, 94, 0.5) !important;
	box-shadow: 0 4px 15px rgba(34, 197, 94, 0.3) !important;
}

/* Override за pending state - статичен жълт ефект без анимация */
.social-actions .friend-btn.pending {
	opacity: 1 !important;
	transform: translateX(0) !important;
}

/* Вторични действия */
.secondary-actions {
	position: relative;
	width: 100%;
}

.secondary-actions .more-btn {
	width: 100%;
	padding: 12px 16px;
	background: linear-gradient(90deg,
			rgba(75, 85, 99, 0.15) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	color: var(--text-secondary);
	display: flex;
	align-items: center;
	gap: 12px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.secondary-actions .more-btn .icon {
	font-size: 16px;
	opacity: 0.7;
	transition: transform 0.3s ease;
}

.secondary-actions .more-btn:hover {
	background: linear-gradient(90deg,
			rgba(75, 85, 99, 0.2) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border-color: rgba(75, 85, 99, 0.3);
	transform: translateY(-2px);
}

.secondary-actions .more-btn:hover .icon {
	transform: rotate(45deg);
	opacity: 1;
}

/* Dropdown меню */
.secondary-dropdown {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	background: var(--bg-secondary);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	padding: 4px;
	display: none;
	flex-direction: column;
	gap: 2px;
	z-index: 100;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	animation: dropdownShow 0.2s ease forwards;
}

.secondary-dropdown .action-button {
	padding: 8px 12px;
	background: transparent;
	border: none;
	border-radius: 6px;
	color: var(--text-secondary);
	display: flex;
	align-items: center;
	gap: 8px;
	transition: all 0.2s ease;
	text-align: left;
	width: 100%;
	font-size: 11px;
}

.secondary-dropdown .action-button:hover {
	background: rgba(255, 255, 255, 0.05);
}

.secondary-dropdown .action-button .icon {
	font-size: 14px;
	opacity: 0.8;
}

.secondary-dropdown .action-button .text {
	flex: 1;
}

/* Специфични цвета за бутоните */
.secondary-dropdown .share-btn {
	color: var(--accent-blue);
}

.secondary-dropdown .block-btn {
	color: #ef4444;
}

.secondary-dropdown .restrict-btn {
	color: #f59e0b;
}

.secondary-dropdown .report-btn {
	color: #dc2626;
}

/* Анимация за dropdown */
@keyframes dropdownShow {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Добавяме ефект на натискане */
.secondary-actions .more-btn:active {
	transform: scale(0.98) translateY(0);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Анимация при появяване */
.secondary-actions .more-btn {
	animation: slideIn 0.3s ease forwards;
	animation-delay: 0.4s;
}

/* Добавяме overlay за затваряне при клик извън */
.dropdown-overlay {
	position: fixed;
	inset: 0;
	background: transparent;
	display: none;
	z-index: 99;
}

.secondary-actions.active .dropdown-overlay {
	display: block;
}

/* Upload Button */
.upload-photo-btn {
	aspect-ratio: 1;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	background: linear-gradient(135deg,
			rgba(59, 130, 246, 0.1),
			rgba(45, 212, 191, 0.1));
	border: 2px dashed rgba(59, 130, 246, 0.3);
}

.upload-label {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 16px;
	cursor: pointer;
}

.upload-icon {
	font-size: 32px;
	margin-bottom: 8px;
}

.upload-text {
	font-size: 14px;
	font-weight: 600;
	color: var(--text-primary);
	text-align: center;
}

.upload-hint {
	font-size: 11px;
	color: var(--text-secondary);
	text-align: center;
	max-width: 120px;
	line-height: 1.3;
}

/* Drag & Drop States */
.upload-photo-btn.drag-over {
	border-color: var(--accent-blue);
	background: linear-gradient(135deg,
			rgba(59, 130, 246, 0.2),
			rgba(45, 212, 191, 0.2));
}

/* Upload Progress */
.upload-progress {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: rgba(255, 255, 255, 0.1);
	overflow: hidden;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.upload-progress.active {
	opacity: 1;
}

.upload-progress-bar {
	height: 100%;
	background: var(--accent-blue);
	width: 0;
	transition: width 0.3s ease;
}

/* Анимация при появяване */
.upload-photo-btn {
	animation: fadeInScale 0.3s ease forwards;
}

@keyframes fadeInScale {
	from {
		opacity: 0;
		transform: scale(0.9);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

/* Friends Section */
.profile-friends-section {
	margin-top: 24px;
	padding: 0;
	background: transparent;
	border: none;
}

.profile-friends-section .section-header {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
	padding: 12px 16px;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.08),
			rgba(59, 130, 246, 0.03));
	border: 1px solid rgba(59, 130, 246, 0.06);
	border-left: 2px solid rgba(59, 130, 246, 0.3);
	border-radius: 12px;
	box-shadow:
		0 1px 2px rgba(59, 130, 246, 0.04),
		0 2px 4px rgba(59, 130, 246, 0.03);
}

.profile-friends-section .section-title {
	font-weight: 600;
	color: var(--accent-blue);
	text-transform: uppercase;
	margin: 0;
	letter-spacing: 0.5px;
}

.profile-friends-section .friends-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 6px;
	font-size: 11px;
	font-weight: 500;
	color: var(--accent-blue);
	background: rgba(59, 130, 246, 0.15);
	border-radius: 12px;
	line-height: 1;
}



.friends-grid {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 0;
}

.friend-item {
	background: linear-gradient(135deg,
			rgba(18, 20, 28, 0.95) 0%,
			rgba(26, 32, 46, 0.95) 50%,
			rgba(30, 35, 50, 0.95) 100%);
	border-radius: 12px;
	padding: 12px 16px;
	cursor: pointer;
	border: 1px solid rgba(59, 130, 246, 0.1);
	display: flex;
	align-items: center;
	gap: 12px;
	position: relative;
	overflow: hidden;
	box-shadow:
		inset 0 -25px 20px -20px rgba(0, 0, 0, 0.2),
		inset 0 1px 2px rgba(59, 130, 246, 0.12),
		0 2px 8px rgba(59, 130, 246, 0.08),
		0 0 20px rgba(59, 130, 246, 0.03);
}

.friend-item::before {
	content: '';
	position: absolute;
	inset: 0;
	padding: 1px;
	background: linear-gradient(135deg,
			rgba(59, 130, 246, 0.1),
			rgba(59, 130, 246, 0.3),
			rgba(59, 130, 246, 0.05));
	border-radius: 12px;
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask-composite: exclude;
	opacity: 0;
	z-index: -1;
}

.friend-item::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: linear-gradient(to right,
			transparent,
			rgba(59, 130, 246, 0.15),
			transparent);
}



.friend-avatar {
	position: relative;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	border: 2px solid rgba(59, 130, 246, 0.1);
}

.friend-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.95);
}

.friend-status {
	position: absolute;
	bottom: 2px;
	right: 2px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #22c55e;
	border: 1px solid rgba(18, 20, 28, 0.95);
}

.friend-info {
	flex: 1;
	min-width: 0;
}

.friend-name {
	font-size: calc(var(--label-font-size) + 1px);
	font-weight: 500;
	color: var(--female-color, #ec4899);
	margin-bottom: 4px;
	position: relative;
}

.friend-name.male {
	color: var(--male-color, #3b82f6);
}



.friend-meta {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.4);
}

.friend-date {
	font-size: 10px;
	color: rgba(255, 255, 255, 0.4);
}

.empty-friends {
	text-align: center;
	padding: 16px;
	background: rgba(18, 20, 28, 0.95);
	border-radius: 12px;
}

.empty-friends .empty-icon {
	font-size: 24px;
	margin-bottom: 8px;
	opacity: 0.5;
}

.empty-friends p {
	color: rgba(255, 255, 255, 0.4);
	font-size: 12px;
	margin: 0;
}

/* Remove responsive grid */
@media (max-width: 1200px) {
	.friends-grid {
		display: flex;
	}
}

@media (max-width: 768px) {
	.friends-grid {
		display: flex;
	}
}

/* Comments Section */
.comments-section {
	margin-top: 24px;
}

.comments-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.comment-item {
	background: linear-gradient(180deg,
			rgba(18, 20, 28, 0.98) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border-radius: 8px;
	padding: 8px;
	position: relative;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.03);
	padding-bottom: 3px;
}

.comment-author {
	display: flex;
	align-items: center;
	gap: 8px;
	padding-right: 24px;
}

.author-avatar {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
}

.author-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.author-info {
	flex: 1;
	min-width: 0;
}

.author-name {
	font-size: 7px;
	font-weight: 600;
	margin-bottom: 0;
	color: var(--text-primary);
}

.comment-date {
	position: absolute;
	bottom: 3px;
	right: 8px;
	font-size: 7px;
	color: rgba(59, 130, 246, 0.7);
	opacity: 0.6;
	background: rgba(0, 0, 0, 0.08);
	padding: 1px 3px;
	border-radius: 4px;
	letter-spacing: 0.1px;
	z-index: 1;
	line-height: 1.1;
	filter: drop-shadow(0 0 2px rgba(59, 130, 246, 0.2));
	transition: filter 0.3s ease;
	/* Премахваме blur ефектите които замъгляват */
}

.comment-content {
	font-size: 9px;
	line-height: 1.4;
	color: var(--text-primary);
	word-break: break-word;
	padding-left: 32px;
}

.comment-actions {
	position: absolute;
	top: 8px;
	right: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.delete-comment {
	width: 16px;
	height: 16px;
	background: none;
	border: none;
	cursor: pointer;
	border-radius: 4px;
	transition: all 0.2s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ef4444;
	font-size: 11px;
	font-weight: bold;
	padding: 0;
}

.delete-comment:active {
	background: rgba(239, 68, 68, 0.1);
	transform: scale(0.95);
}

.delete-comment .icon {
	transform: rotate(0deg);
	transition: transform 0.2s ease;
	line-height: 1;
}

.delete-comment:active .icon {
	transform: rotate(90deg);
}

.empty-comments {
	text-align: center;
	padding: 24px 16px;
}

.empty-comments .empty-icon {
	font-size: 24px;
	margin-bottom: 8px;
	opacity: 0.5;
}

.empty-comments p {
	font-size: 12px;
	color: var(--text-secondary);
	margin: 0;
}

/* Анимации за коментари */
.comment-item {
	animation: commentSlideIn 0.3s ease forwards;
	opacity: 0;
	transform: translateY(10px);
}

@keyframes commentSlideIn {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Добавяме закъснение за всеки следващ коментар */
.comment-item:nth-child(1) {
	animation-delay: 0.1s;
}

.comment-item:nth-child(2) {
	animation-delay: 0.2s;
}

.comment-item:nth-child(3) {
	animation-delay: 0.3s;
}

.comment-item:nth-child(4) {
	animation-delay: 0.4s;
}

.comment-item:nth-child(5) {
	animation-delay: 0.5s;
}

/* Comment Box */
.comment-box {
	background: rgba(18, 20, 28, 0.95);
	border-radius: 8px;
	padding: 8px;
	margin-bottom: 8px;
	cursor: pointer;
	box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.05);
}



.comment-box-content {
	display: flex;
	align-items: center;
}

.comment-box-input {
	flex: 1;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 6px;
	padding: 8px 12px;
	color: var(--text-secondary);
	font-size: 11px;
	user-select: none;
}

/* ========================================
   PAYMENTS SECTION STYLES - EXTENDED FROM SETTINGS.PHP
   ======================================== */

/* Profile Content Wrapper */
.profile-content {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 0;
}

/* Subscription Section */
.subscription-section {
	margin-bottom: 20px;
	padding: 12px;
	background: rgba(59, 130, 246, 0.05);
	border-radius: 8px;
	border: 1px solid rgba(59, 130, 246, 0.1);
}

.active-subscription {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px;
	background: rgba(59, 130, 246, 0.1);
	border-radius: 6px;
}

.subscription-premium_monthly,
.subscription-premium_yearly {
	border-left: 4px solid #3b82f6;
}

.subscription-vip {
	border-left: 4px solid #ffd700;
	background: rgba(255, 215, 0, 0.05);
}

.subscription-icon {
	font-size: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: rgba(59, 130, 246, 0.2);
	border-radius: 50%;
	flex-shrink: 0;
}

.subscription-details {
	flex: 1;
	min-width: 0;
}

.subscription-name {
	font-size: 14px;
	font-weight: 500;
	color: var(--text-primary);
	margin-bottom: 3px;
}

.subscription-expires {
	font-size: 11px;
	color: var(--text-secondary);
}

/* Section Headers */
.section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
	margin-top: 8px;
	height: 32px;
}

.section-title {
	position: relative;
	padding-left: 12px;
	font-size: 10px;
	font-weight: 600;
	color: var(--accent-blue);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 12px;
	line-height: 1;
	display: flex;
	align-items: center;
}

.section-title::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 16px;
	background: var(--accent-blue);
	border-radius: 2px;
}

/* Payment History Section */
.payment-history-section {
	margin-top: 24px;
	padding: 0;
	background: transparent;
	border-radius: 0;
	border: none;
}

/* Subscription Management */
.subscription-management {
	margin-bottom: 20px;
	margin-top: 24px;
	padding: 16px 0;
	background: transparent;
	border-radius: 0;
	border: none;
	text-align: center;
}

.manage-subscription-btn {
	width: 100%;
	padding: 12px;
	background: linear-gradient(90deg,
			var(--accent-blue) 0%,
			rgba(59, 130, 246, 0.8) 100%);
	border: none;
	border-radius: 8px;
	color: white;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	box-shadow: none;
}



.button-icon {
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.button-text {
	font-size: 14px;
	font-weight: 500;
}

/* Payment Count Badge */
.payment-count {
	background: rgba(59, 130, 246, 0.1);
	color: var(--text-primary);
	padding: 2px 8px;
	border-radius: 10px;
	font-size: 11px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
}

/* Empty Payments State */
.empty-payments {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 32px 16px;
	text-align: center;
	background: rgba(59, 130, 246, 0.02);
	border-radius: 8px;
	border: 1px dashed rgba(59, 130, 246, 0.1);
}

.empty-icon {
	font-size: 32px;
	opacity: 0.5;
	margin-bottom: 8px;
}

.empty-payments p {
	color: var(--text-secondary);
	font-size: 12px;
	margin: 0;
}

/* Payment Grid Layout */
.payments-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.payments-grid.grid-view {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 12px;
}

.payments-grid .col {
	flex: 1;
	min-width: calc(33.33% - 12px);
	display: flex;
	flex-direction: column;
}

.payments-grid .card {
	background: linear-gradient(135deg,
			rgba(59, 130, 246, 0.05) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border: 1px solid rgba(59, 130, 246, 0.1);
	border-radius: 12px;
	padding: 16px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	transition: all 0.3s ease;
	flex: 1;
}



/* Payment Card */
.payment-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	height: 100%;
}

.payment-card.fade-in {
	animation: fadeInPayment 0.5s ease forwards;
	opacity: 0;
	transform: translateY(10px);
}

@keyframes fadeInPayment {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.payment-icon {
	font-size: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: rgba(59, 130, 246, 0.15);
	border-radius: 50%;
	margin-bottom: 8px;
	flex-shrink: 0;
}

/* Payment Info */
.payment-info {
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}

.payment-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

.payment-type {
	font-size: 14px;
	font-weight: 600;
	color: var(--text-primary);
	margin-bottom: 2px;
}

.payment-amount {
	font-size: 16px;
	font-weight: 700;
	color: var(--accent-blue);
	font-family: 'JetBrains Mono', monospace;
}

/* Payment Details */
.payment-details {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: auto;
}

.payment-date,
.payment-expires,
.payment-product,
.payment-transaction {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 4px 0;
	border-bottom: 1px solid rgba(59, 130, 246, 0.05);
}

.payment-details .label {
	font-size: 10px;
	color: var(--text-secondary);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	flex-shrink: 0;
}

.payment-details .value {
	font-size: 11px;
	color: var(--text-primary);
	font-weight: 500;
	text-align: right;
}

.payment-details .value.monospace {
	font-family: 'JetBrains Mono', monospace;
	font-size: 9px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 140px;
	background: rgba(59, 130, 246, 0.05);
	padding: 2px 6px;
	border-radius: 4px;
}

/* Payment Status */
.payment-status {
	font-size: 11px;
	font-weight: 600;
	padding: 4px 12px;
	border-radius: 12px;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-top: 8px;
	border: 1px solid;
}

.status-completed {
	background: rgba(34, 197, 94, 0.1);
	color: #22c55e;
	border-color: rgba(34, 197, 94, 0.2);
}

.status-pending {
	background: rgba(251, 191, 36, 0.1);
	color: #fbbf24;
	border-color: rgba(251, 191, 36, 0.2);
}

.status-failed {
	background: rgba(239, 68, 68, 0.1);
	color: #ef4444;
	border-color: rgba(239, 68, 68, 0.2);
}

.status-refunded {
	background: rgba(156, 163, 175, 0.1);
	color: #9ca3af;
	border-color: rgba(156, 163, 175, 0.2);
}

.status-cancelled {
	background: rgba(75, 85, 99, 0.1);
	color: #6b7280;
	border-color: rgba(75, 85, 99, 0.2);
}

/* Subscription Modal */
.subscription-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.7);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10000;
	backdrop-filter: blur(4px);
}

.subscription-modal-content {
	background: var(--bg-secondary);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 16px;
	padding: 24px;
	max-width: 400px;
	width: 90%;
	text-align: center;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.subscription-modal h3 {
	color: var(--text-primary);
	margin-bottom: 8px;
	font-size: 18px;
	font-weight: 600;
}

.subscription-modal p {
	color: var(--text-secondary);
	margin-bottom: 20px;
	font-size: 14px;
}

.subscription-options {
	display: flex;
	gap: 12px;
	margin: 16px 0;
	justify-content: center;
}

.subscription-option {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 16px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 12px;
	text-decoration: none;
	color: var(--text-primary);
	transition: all 0.3s ease;
	flex: 1;
}



.option-icon {
	font-size: 24px;
}

.option-text {
	font-size: 12px;
	font-weight: 500;
}

.close-modal {
	background: rgba(239, 68, 68, 0.1);
	color: #ef4444;
	border: 1px solid rgba(239, 68, 68, 0.2);
	padding: 8px 16px;
	border-radius: 8px;
	cursor: pointer;
	margin-top: 16px;
	font-size: 12px;
	font-weight: 500;
	transition: all 0.3s ease;
}



/* Responsive Payments */
@media (max-width: 768px) {
	.payments-grid {
		flex-direction: column;
	}

	.payments-grid.grid-view {
		grid-template-columns: 1fr;
	}

	.payments-grid .col {
		min-width: 100%;
	}

	.subscription-management {
		margin-top: 16px;
	}

	.subscription-options {
		flex-direction: column;
	}

	.subscription-modal-content {
		margin: 16px;
	}

	.payment-details .value.monospace {
		max-width: 100px;
		font-size: 8px;
	}
}

/* Animation delays for payment cards */
.payment-card.fade-in:nth-child(1) {
	animation-delay: 0.1s;
}

.payment-card.fade-in:nth-child(2) {
	animation-delay: 0.2s;
}

.payment-card.fade-in:nth-child(3) {
	animation-delay: 0.3s;
}

.payment-card.fade-in:nth-child(4) {
	animation-delay: 0.4s;
}

.payment-card.fade-in:nth-child(5) {
	animation-delay: 0.5s;
}

/* Hover ефект за по-добра видимост на времето - като в chat */

/* ========================================
   END PAYMENTS SECTION STYLES - EXTENDED
   ======================================== */

/* Activity Status Colors - син фон за всички, цветни външни ефекти */
.profile-view .activity-value.status-online {
	color: var(--accent-blue) !important;
	background: rgba(59, 130, 246, 0.1) !important;
	/* син фон като register-date */
	border: 1px solid rgba(68, 183, 0, 0.11);
	box-shadow:
		0 0 3px rgba(68, 183, 0, 0.11),
		0 1px 3px rgba(68, 183, 0, 0.08),
		inset 0 1px 0 rgba(68, 183, 0, 0.08);
	animation: onlineGlow 3s ease-in-out infinite;
}

.profile-view .activity-value.status-away {
	color: var(--accent-blue) !important;
	background: rgba(59, 130, 246, 0.1) !important;
	/* син фон като register-date */
	border: 1px solid rgba(255, 152, 0, 0.11);
	box-shadow:
		0 0 3px rgba(255, 152, 0, 0.11),
		0 1px 3px rgba(255, 152, 0, 0.08),
		inset 0 1px 0 rgba(255, 152, 0, 0.08);
	animation: awayGlow 3s ease-in-out infinite;
}

/* Offline - стандартен стил */
.profile-view .activity-value.status-offline {
	color: var(--accent-blue) !important;
	background: rgba(59, 130, 246, 0.1) !important;
	border: none !important;
	box-shadow: none !important;
	animation: none !important;
}

.profile-view .activity-value.status-vip {
	color: var(--accent-blue) !important;
	background: rgba(59, 130, 246, 0.1) !important;
	/* син фон като register-date */
	border: 1px solid rgba(255, 215, 0, 0.15);
	box-shadow:
		0 0 4.5px rgba(255, 215, 0, 0.15),
		0 1px 4.5px rgba(255, 215, 0, 0.11),
		inset 0 1px 0 rgba(255, 215, 0, 0.11);
	animation: vipGlow 2s ease-in-out infinite;
}

/* Status Glow Animations - без промяна на background */
@keyframes onlineGlow {
	0% {
		box-shadow:
			0 0 3px rgba(68, 183, 0, 0.11),
			0 1px 3px rgba(68, 183, 0, 0.08),
			inset 0 1px 0 rgba(68, 183, 0, 0.08);
	}

	50% {
		box-shadow:
			0 0 6px rgba(68, 183, 0, 0.19),
			0 2px 6px rgba(68, 183, 0, 0.15),
			inset 0 1px 0 rgba(68, 183, 0, 0.15);
		/* background остава син */
	}

	100% {
		box-shadow:
			0 0 3px rgba(68, 183, 0, 0.11),
			0 1px 3px rgba(68, 183, 0, 0.08),
			inset 0 1px 0 rgba(68, 183, 0, 0.08);
	}
}

@keyframes awayGlow {
	0% {
		box-shadow:
			0 0 3px rgba(255, 152, 0, 0.11),
			0 1px 3px rgba(255, 152, 0, 0.08),
			inset 0 1px 0 rgba(255, 152, 0, 0.08);
	}

	50% {
		box-shadow:
			0 0 6px rgba(255, 152, 0, 0.19),
			0 2px 6px rgba(255, 152, 0, 0.15),
			inset 0 1px 0 rgba(255, 152, 0, 0.15);
		/* background остава син */
	}

	100% {
		box-shadow:
			0 0 3px rgba(255, 152, 0, 0.11),
			0 1px 3px rgba(255, 152, 0, 0.08),
			inset 0 1px 0 rgba(255, 152, 0, 0.08);
	}
}

@keyframes vipGlow {
	0% {
		box-shadow:
			0 0 4.5px rgba(255, 215, 0, 0.15),
			0 1px 4.5px rgba(255, 215, 0, 0.11),
			inset 0 1px 0 rgba(255, 215, 0, 0.11);
	}

	50% {
		box-shadow:
			0 0 7.5px rgba(255, 215, 0, 0.23),
			0 2px 7.5px rgba(255, 215, 0, 0.19),
			inset 0 1px 0 rgba(255, 215, 0, 0.19);
		/* background остава син */
		transform: scale(1.008);
	}

	100% {
		box-shadow:
			0 0 4.5px rgba(255, 215, 0, 0.15),
			0 1px 4.5px rgba(255, 215, 0, 0.11),
			inset 0 1px 0 rgba(255, 215, 0, 0.11);
	}
}

/* ! suggestions.css ! */
/* Wrapper за suggestions */
.suggestions-wrapper {
	position: relative !important;
	width: 100%;
}

/* Общи стилове за suggestions контейнери */
.suggestions-container {
	/* position: absolute; */
	top: 100%;
	left: 0;
	width: 100%;
	max-height: 200px;
	overflow-y: auto;
	background: rgb(18, 20, 28);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 8px;
	margin-top: 4px;
	z-index: 9999;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
	display: none;
	transform-origin: top;
	transform: scaleY(0.9);
	opacity: 0;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

/* Общи стилове за suggestions items */
.suggestion-item {
	padding: 10px 16px;
	cursor: pointer;
	transition: all 0.2s ease;
	font-size: 11px;
	color: var(--text-primary);
	background: rgb(18, 20, 28);
	border-bottom: 1px solid rgba(59, 130, 246, 0.1);
	display: flex;
	align-items: center;
}

/* Стилове за градове */
.suggestion-item .city-name {
	text-align: left;
}

.suggestion-item .city-count {
	color: var(--text-secondary);
	font-size: 9px;
	background: rgba(59, 130, 246, 0.1);
	padding: 2px 6px;
	border-radius: 10px;
	margin-left: auto;
}

/* Hover ефект */
.suggestion-item:hover {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.15),
			rgba(59, 130, 246, 0.05));
	transform: translateX(4px);
}

/* Стилове за scrollbar */
.suggestions-container::-webkit-scrollbar {
	width: 6px;
}

.suggestions-container::-webkit-scrollbar-track {
	background: transparent;
}

.suggestions-container::-webkit-scrollbar-thumb {
	background: rgba(59, 130, 246, 0.2);
	border-radius: 3px;
}

/* Когато е видим */
.suggestions-container.show,
.suggestions-container[style*="display: block"] {
	display: block !important;
	opacity: 1 !important;
	transform: scaleY(1) !important;
}

/* ! system-notifications.css ! */
/* Base styles for notifications */
.notification-message {
	position: fixed;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 9999999;
	padding: 16px 24px;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	opacity: 0;
	min-width: 300px;
	max-width: 90%;
	text-align: center;
	pointer-events: none;
	will-change: transform, opacity;
	backface-visibility: hidden;
	perspective: 1000px;
	transform-style: preserve-3d;
}

/* Show animation with hardware acceleration */
.notification-message.show {
	animation: slideDown 250ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
	pointer-events: auto;
	transform: translate3d(-50%, 100px, 0);
}

/* Success notification */
.success-message {
	background: linear-gradient(90deg,
			rgba(34, 197, 94, 0.95),
			rgba(34, 197, 94, 0.98));
	border: 1px solid rgba(34, 197, 94, 0.2);
}

/* Error notification */
.error-message {
	background: linear-gradient(90deg,
			rgba(239, 68, 68, 0.95),
			rgba(239, 68, 68, 0.98));
	border: 1px solid rgba(239, 68, 68, 0.2);
}

/* Info notification */
.info-message {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.95),
			rgba(59, 130, 246, 0.98));
	border: 1px solid rgba(59, 130, 246, 0.2);
}

/* Text styles */
.notification-text {
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Optimized animation */
@keyframes slideDown {
	from {
		opacity: 0;
		transform: translate3d(-50%, -20px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(-50%, 100px, 0);
	}
}

/* Button styles */
.info-button {
	background: rgba(255, 255, 255, 0.2);
	border: none;
	color: white;
	padding: 8px 16px;
	border-radius: 4px;
	margin-top: 8px;
	cursor: pointer;
	transition: background 250ms ease;
	transform: translateZ(0);
}

.info-button:hover {
	background: rgba(255, 255, 255, 0.3);
}

/* Body state with notification */
body.has-notification {
	pointer-events: none;
}

body.has-notification .notification-message {
	pointer-events: auto;
}

/* Базови стилове за всички нотификации */
.success-message,
.error-message,
.info-message {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, calc(-50% + 100px));
	padding: 24px 32px;
	border-radius: 16px;
	font-size: 14px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	opacity: 0;
	visibility: hidden;
	z-index: 9999999;
	min-width: 320px;
	max-width: 400px;
	text-align: center;
	color: white;
	box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(8px);
	transition: all 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* Градиенти за различните типове */
.success-message {
	background: linear-gradient(135deg, #22c55e, #16a34a);
	background-size: 200% 200%;
	border: 1px solid rgba(34, 197, 94, 0.3);
	animation: gradientShift 2s ease infinite;
}

.error-message {
	background: linear-gradient(135deg, #ef4444, #dc2626);
	background-size: 200% 200%;
	border: 1px solid rgba(239, 68, 68, 0.3);
	animation: gradientShift 2s ease infinite;
}

.info-message {
	background: linear-gradient(135deg, #3b82f6, #2563eb);
	background-size: 200% 200%;
	border: 1px solid rgba(59, 130, 246, 0.3);
	animation: gradientShift 2s ease infinite;
}

/* Активно състояние */
.success-message.show,
.error-message.show,
.info-message.show {
	transform: translate(-50%, -50%);
	opacity: 1;
	visibility: visible;
	box-shadow:
		0 0 0 100vmax rgba(0, 0, 0, 0.3),
		0 8px 32px rgba(0, 0, 0, 0.3);
}

/* Иконки */
.notification-icon {
	font-size: 24px;
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
	animation: iconPulse 2s ease-in-out infinite;
}

/* Специфични стилове за success иконката */
.success-message .notification-icon {
	color: #ffffff;
	text-shadow:
		0 0 10px rgba(255, 255, 255, 1),
		0 0 20px rgba(255, 255, 255, 1);
	font-weight: bold;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Текст и съдържание */
.notification-content {
	width: 100%;
	position: relative;
}

.notification-text {
	font-size: 15px;
	line-height: 1.5;
	margin: 0;
	white-space: normal;
	word-wrap: break-word;
}

/* Специфични стилове за info съобщение */
.info-message .notification-text strong {
	color: #faeb60;
	text-decoration: underline;
	font-weight: 500;
}

/* Бутони */
.notification-buttons {
	display: flex;
	gap: 8px;
	justify-content: center;
	margin-top: 16px;
}

.info-button {
	min-width: 100px;
	padding: 8px 24px;
	border-radius: 6px;
	font-size: 14px;
	cursor: pointer;
	transition: all 0.2s ease;
	border: none;
	color: white;
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

.info-button.confirm-button {
	background: #22c55e;
}

.info-button.cancel-button {
	background: #ef4444;
}

.info-button:hover {
	transform: translateY(-1px);
	opacity: 0.95;
}

/* Анимации */
@keyframes iconPulse {
	0% {
		transform: scale(1);
		opacity: 1;
	}

	50% {
		transform: scale(1.1);
		opacity: 0.8;
	}

	100% {
		transform: scale(1);
		opacity: 1;
	}
}

/* Скриване на нотификации */
.success-message:not(.show),
.error-message:not(.show),
.info-message:not(.show) {
	transform: translate(-50%, calc(-50% + 100px));
	opacity: 0;
	visibility: hidden;
}

/* Блокиране на събития */
body.has-notification {
	pointer-events: none !important;
}

body.has-notification * {
	pointer-events: none !important;
}

body.has-notification .success-message,
body.has-notification .error-message,
body.has-notification .info-message {
	pointer-events: all !important;
}

body.has-notification .success-message *,
body.has-notification .error-message *,
body.has-notification .info-message * {
	pointer-events: all !important;
}

/* Специална логика за lightbox overlay */
body.has-notification .lightbox {
	pointer-events: none;
}

body.has-notification .lightbox-image {
	pointer-events: none !important;
}

body.has-notification .lightbox .success-message,
body.has-notification .lightbox .error-message,
body.has-notification .lightbox .info-message {
	pointer-events: all;
}

/* Hover ефекти */
.success-message:hover,
.error-message:hover,
.info-message:hover {
	transform: translate(-50%, -52%) scale(0.98);
	opacity: 0.95;
}

/* Анимация за градиента */
@keyframes gradientShift {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

/* Анимиран border */
.success-message::after,
.error-message::after,
.info-message::after {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	right: -2px;
	bottom: -2px;
	border-radius: 16px;
	z-index: -1;
	animation: borderAnimation 2s linear infinite;
}

.success-message::after {
	background: linear-gradient(90deg, #22c55e, #16a34a, #22c55e);
	background-size: 200% 100%;
}

.error-message::after {
	background: linear-gradient(90deg, #ef4444, #dc2626, #ef4444);
	background-size: 200% 100%;
}

.info-message::after {
	background: linear-gradient(90deg, #3b82f6, #2563eb, #3b82f6);
	background-size: 200% 100%;
}

/* Анимация за border */
@keyframes borderAnimation {
	0% {
		background-position: 0% 0%
	}

	100% {
		background-position: 200% 0%
	}
}

/* ! app-interface.css ! */
/* ==================== PULL-TO-REFRESH КОНТРОЛ ==================== */
/* Забрана на pull-to-refresh навсякъде, освен в header */
* {
	overscroll-behavior: none;
	overscroll-behavior-y: none;
}

/* ==================== CSS VARIABLES ==================== */
/* Интегрирани от variables.css за централизиран контрол */
:root {
	/* Елегантна тъмна тема */
	--bg-primary: #0a0b0f;
	--bg-secondary: #12141c;
	--bg-tertiary: #1a1d28;

	/* Професионални акценти */
	--accent-blue: #3b82f6;
	--accent-hover: #60a5fa;
	--accent-teal: #2dd4bf;
	--accent-indigo: #818cf8;

	/* Градиенти */
	--gradient-elegant: linear-gradient(135deg, #4f9eff, #2dd4bf);
	--gradient-message: linear-gradient(135deg, #1e2230, #161922);
	--gradient-purple: linear-gradient(135deg, #818cf8, #c084fc);
	--gradient-sunset: linear-gradient(135deg, #f97316, #db2777);
	--gradient-ocean: linear-gradient(135deg, #0ea5e9, #2dd4bf);
	--gradient-forest: linear-gradient(135deg, #22c55e, #14b8a6);
	--gradient-fire: linear-gradient(135deg, #ef4444, #f97316);
	--gradient-night: linear-gradient(135deg, #312e81, #1e40af);
	--gradient-dawn: linear-gradient(135deg, #6366f1, #a855f7);
	--gradient-metal: linear-gradient(135deg, #475569, #64748b);

	/* Градиенти с прозрачност */
	--gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
	--gradient-blur: linear-gradient(135deg, rgba(26, 29, 40, 0.8), rgba(18, 20, 28, 0.8));

	/* Текст */
	--text-primary: #f3f4f6;
	--text-secondary: #9ca3af;

	/* Ефекти */
	--shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
	--shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);

	/* Радиуси */
	--radius-sm: 8px;

	/* New Messages Indicator */
	--indicator-bg: rgba(59, 130, 246, 0.9);
	--indicator-hover: rgba(96, 165, 250, 0.9);
	--radius-md: 12px;
	--radius-lg: 16px;

	/* Преходи */
	--transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);

	/* Статус цветове */
	--error-color: #ef4444;
	/* Основен червен цвят за грешки */
	--error-bg: rgba(239, 68, 68, 0.05);
	/* Фонов червен цвят за грешки */
	--success-color: #22c55e;
	/* Зелено за успех */
	--warning-color: #f97316;
	/* Оранжево за предупреждения */
	--info-color: #3b82f6;
	/* Синьо за информация */
}

img {
	filter: brightness(1.3);
}


/* ==================== END CSS VARIABLES ==================== */

/* ==================== RESET STYLES ==================== */
/* Интегрирани от reset.css за базово нулиране */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Позволяваме селекция само за input и textarea елементи */
input,
textarea {
	-webkit-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	user-select: text;
}

/* Глобални скрол стилове - напълно скрити */
* {
	-ms-overflow-style: none;
	/* IE и Edge */
	scrollbar-width: none;
	/* Firefox */
}

/* Скриваме скролбара за webkit browsers */
*::-webkit-scrollbar {
	display: none;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	background: var(--bg-primary);
	color: var(--text-primary);
	line-height: 1.5;
}

/* ==================== END RESET STYLES ==================== */


:root {
	/* Sidebar Dimensions */
	--sidebar-width: 100%;
	--sidebar-height: calc(100vh - 60px);
	--sidebar-padding: 3px;
	--sidebar-bottom-offset: calc(var(--footer-height) + var(--footer-safe-area) + 8px);

	/* Button Dimensions */
	--button-height: auto;
	--button-padding: 8px 10px;
	--button-gap: 10px;
	--button-margin: 5px;
	--button-border-left: 2px;

	/* Typography */
	--button-font-size: 9px;
	--label-font-size: 9px;
	--sub-label-font-size: 8px;
	--category-font-size: 9px;

	/* Colors */
	--sidebar-bg-start: var(--bg-secondary);
	--sidebar-bg-end: rgba(18, 20, 28, 0.95);
	--sidebar-border: rgba(255, 255, 255, 0.05);
	--button-bg-default: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.02));
	--button-bg-hover: linear-gradient(90deg, rgba(59, 130, 246, 0.05), rgba(255, 255, 255, 0.02));
	--button-bg-active: linear-gradient(90deg, rgba(59, 130, 246, 0.15), rgba(59, 130, 246, 0.05));
	--accent-glow: radial-gradient(circle at center, rgba(59, 130, 246, 0.2) 0%, transparent 50%);

	/* Animation Timing - DIRECT VALUES */
	--sidebar-transition: all 0.3s ease;
	/* 🗑️ REMOVED: CSS variables injection - using direct timing values */
	--fade-timing: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	--slide-timing: ease;

	/* Sidebar Animations - ULTRA DELICATE (Footer-Style) */
	--sidebar-ribbon-duration: 12s;
	/* Increased from 10s to footer-level timing */
	--sidebar-flow-duration: 8.5s;
	/* Increased from 6s for more delicate feel */
	--sidebar-accent-rgba: 59, 130, 246;

	/* Chat Animation Variables - Footer Model */
	--chat-glow-duration: 8s;
	--chat-scale-duration: 5.6s;
	--chat-accent-rgba: 59, 130, 246;

	/* Shadows */
	--button-shadow-active:
		0 1px 2px rgba(59, 130, 246, 0.1),
		0 2px 4px rgba(59, 130, 246, 0.1),
		0 4px 8px rgba(59, 130, 246, 0.1);

	/* Avatar & Indicators */
	--avatar-size: 32px;
	--indicator-size: 10px;
	--indicator-border: 2px solid var(--bg-primary);

	/* Premium Colors */
	--premium-gradient: linear-gradient(135deg, #ffd700, #ff8c00);
	--premium-shadow: 0 2px 4px rgba(255, 215, 0, 0.3);
}

/* MAIN SIDEBAR CONTAINER */
.activity-sidebar {
	background: linear-gradient(to bottom, var(--sidebar-bg-start) 0%, var(--sidebar-bg-end) 100%);
	border-right: 1px solid var(--sidebar-border);
	padding-left: var(--sidebar-padding);
	padding-bottom: var(--sidebar-bottom-offset);

	display: flex;
	flex-direction: column;
	gap: 1px;
	position: relative;
	overflow-y: scroll;
	overflow-x: hidden;

	width: var(--sidebar-width);
	height: var(--sidebar-height);
	max-height: var(--sidebar-height);
	box-sizing: border-box;
	opacity: 1;
}

.activity-sidebar.removing {
	animation: sidebarFadeOut 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* AMBIENT EFFECTS */
/* Ambient Background Gradient */
.activity-sidebar::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	background: linear-gradient(to bottom, rgba(59, 130, 246, 0.05), transparent);
	pointer-events: none;
	z-index: 1;
}

/* Falling Light Ribbon Animation - Ultra Performance */
.activity-sidebar::after {
	content: '';
	position: absolute;
	top: -20px;
	left: 0;
	width: 3px;
	height: calc(100% + 40px);
	background: linear-gradient(to bottom,
			transparent 0%,
			rgba(var(--sidebar-accent-rgba), 0.05) 10%,
			rgba(var(--sidebar-accent-rgba), 0.15) 20%,
			rgba(var(--sidebar-accent-rgba), 0.3) 30%,
			rgba(var(--sidebar-accent-rgba), 0.5) 40%,
			rgba(var(--sidebar-accent-rgba), 0.7) 50%,
			rgba(var(--sidebar-accent-rgba), 0.5) 60%,
			rgba(var(--sidebar-accent-rgba), 0.3) 70%,
			rgba(var(--sidebar-accent-rgba), 0.15) 80%,
			rgba(var(--sidebar-accent-rgba), 0.05) 90%,
			transparent 100%);
	pointer-events: none;
	z-index: 10;
	border-radius: 2px;

	/* Initial hidden state before animation */
	opacity: 0;
	transform: translate3d(0, -100%, 0);
	-webkit-transform: translate3d(0, -100%, 0);
}

/* UNIFIED BUTTON BASE */
.category-button,
.category-button.chat-user {
	width: 100%;
	height: var(--button-height);
	padding: var(--button-padding);
	margin: 0 var(--button-margin) var(--button-margin) var(--button-margin);

	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--button-gap);
	text-align: left;

	background: var(--button-bg-default);
	border: 1px solid transparent;
	border-left: var(--button-border-left) solid transparent;
	border-radius: var(--radius-sm);
	color: var(--text-secondary);
	font-size: var(--button-font-size);
	cursor: pointer;

	position: relative;
	overflow: hidden;
	padding-right: 28px;

	opacity: 1;
	transform: translateY(0px);
	-webkit-transform: translateY(0px);
	transition: var(--sidebar-transition);
}

/* Sidebar емоджи стилизация - по-видими от footer */
.category-button:not([data-chat-user-id]) span:first-child {
	/* Монохромни но по-ярки за активна навигация */
	filter: grayscale(1) brightness(1.1) opacity(0.9) drop-shadow(0 1px 3px rgba(59, 130, 246, 0.2));
	-webkit-filter: grayscale(1) brightness(1.1) opacity(0.9) drop-shadow(0 1px 3px rgba(59, 130, 246, 0.2));
	transition: var(--sidebar-transition);
}

/* Активни бутони имат пълноцветни емоджита */
.category-button.active:not([data-chat-user-id]) span:first-child,
.category-button.chat-user.active span:first-child {
	/* Премахване на grayscale за активни бутони - ЦВЕТНИ ЕМОДЖИТА */
	filter: brightness(1.2) opacity(1) drop-shadow(0 2px 6px rgba(59, 130, 246, 0.4));
	-webkit-filter: brightness(1.2) opacity(1) drop-shadow(0 2px 6px rgba(59, 130, 246, 0.4));
	transform: scale(1.05);
	-webkit-transform: scale(1.05);
}





/* ==================== GLOW EFFECTS - GPU OPTIMIZED ==================== */
.category-button::after,
.category-button.chat-user::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.08) 0%,
			transparent 70%);
	opacity: 0;
	transform: scale(0.5);
	-webkit-transform: scale(0.5);
	transition: var(--sidebar-transition);
	pointer-events: none;
	border-radius: var(--radius-sm);
}



/* Active State - Combined with hover effects */
.category-button.active,
.category-button.chat-user.active {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.18),
			rgba(59, 130, 246, 0.08));
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-left: 2px solid var(--accent-blue);
	padding-left: 10px;
	transform: translateX(4px) translateZ(0);
	/* Footer силен box-shadow */
	box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
}

.category-button.active::after,
.category-button.chat-user.active::after {
	opacity: 1;
	/* Footer силен background ефект */
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.15) 0%,
			transparent 70%);
	transform: scale(1);
	-webkit-transform: scale(1);
}

/* ==================== CONTENT COMPONENTS ==================== */
/* Button Content Container */
.button-content,
.chat-info,
.button-labels {
	display: flex;
	align-items: center;
	gap: var(--button-gap);
	flex: 1;
	min-width: 0;
}

.chat-info,
.button-labels {
	flex-direction: column;
	gap: 2px;
	padding-right: 8px;
	align-items: flex-start;
}

/* Text Labels - TEXT-SAFE RENDERING */
.main-label,
.user-name {
	color: rgba(200, 220, 255, 0.95);
	font-weight: 600;
	letter-spacing: 0.2px;
	position: relative;
	padding-bottom: 1px;
	font-size: var(--label-font-size);
	/* Force single line with truncation */
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 160px;
}

/* User names - ПО-ТИХИ цветове за sidebar но запазени оригинални за мъжки/женски */
.user-name {
	color: rgba(160, 180, 210, 0.9);
	/* По-неутрален цвят като базов */
	font-weight: 600;
	letter-spacing: 0.2px;
	position: relative;
	padding-bottom: 1px;
	font-size: calc(var(--label-font-size) - 1px);
	/* Allow wrapping to multiple lines */
	white-space: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;
	max-width: 140px;
	line-height: 1.2;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	/* Limit to 2 lines */
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ЗАПАЗЕНИ оригинални мъжки/женски цветове */
.user-name.male,
.main-label.male {
	color: var(--accent-blue) !important;
	background: linear-gradient(90deg, #3b82f6, #60a5fa) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

.user-name.female,
.main-label.female {
	color: var(--accent-indigo) !important;
	background: linear-gradient(90deg, #e879f9, #d946ef) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}





.sub-label,
.last-message {
	font-size: var(--sub-label-font-size);
	color: rgba(140, 160, 200, 0.85);
	/* Allow wrapping to multiple lines */
	white-space: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;
	max-width: 140px;
	opacity: 0.85;
	letter-spacing: 0.1px;
	line-height: 1.2;
}




/* ==================== CATEGORY GROUPS ==================== */
.category-group {
	position: relative;
}

.category-group+.category-group {
	margin-top: 16px;
}

.category-label {
	font-size: var(--category-font-size);
	color: var(--text-secondary);
	padding: 8px 12px;
	position: relative;
	letter-spacing: 0.5px;

	/* Restore background gradient from old code */
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1),
			transparent);
	border-radius: 4px;

	opacity: 1;
	transform: translateY(0px);
	-webkit-transform: translateY(0px);
	/* animation: buttonSlideUp 0.4s var(--slide-timing) forwards; */
}

.category-label::after {
	content: '';
	position: absolute;
	bottom: 4px;
	left: 12px;
	right: 12px;
	height: 1px;
	background: linear-gradient(90deg, var(--accent-blue), transparent);
}

/* ==================== USER AVATARS & INDICATORS ==================== */
.user-avatar {
	width: var(--avatar-size);
	height: var(--avatar-size);
	position: relative;
	flex-shrink: 0;
	margin-right: 2px;
}

.user-avatar img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(59, 130, 246, 0.1);
}

/* Status Indicators */
.online-indicator,
.offline-indicator,
.away-indicator {
	position: absolute;
	bottom: 0;
	right: 0;
	width: var(--indicator-size);
	height: var(--indicator-size);
	border-radius: 50%;
	border: var(--indicator-border);
}

.online-indicator {
	background-color: #44b700;
	box-shadow: 0 0 3px #44b700;
	transform: scale(1.05);
}

.away-indicator {
	background-color: #ff9800;
	box-shadow: 0 0 3px #ff9800;
	transform: scale(1.05);
}

.offline-indicator {
	background-color: #bdbdbd;
	box-shadow: 0 0 2px #bdbdbd;
	transform: scale(1.05);
}

/* ==================== HIDE OFFLINE STATUS ==================== */
.status-indicator.offline-indicator {
	display: none;
}

/* ==================== PREMIUM STYLES ==================== */
.category-group.premium {
	position: relative;
	padding-top: 4px;
}

.category-group.premium::before {
	content: '';
	position: absolute;
	top: 0;
	left: 8px;
	right: 8px;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.1), transparent);
}

.premium-badge {
	padding: 2px 6px;
	font-size: 9px;
	background: var(--premium-gradient);
	border-radius: 4px;
	color: #000;
	font-weight: bold;
	box-shadow: var(--premium-shadow);
	text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3);
	position: relative;
	overflow: hidden;
}

.premium-badge::after {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.3) 0%, transparent 70%);
	animation: premiumRotate 3s linear infinite;
}

.counter.lock-icon {
	background: transparent;
	color: var(--text-secondary);
	animation: none;
}



/* ==================== ANIMATIONS ==================== */
@keyframes sidebarFadeIn {
	0% {
		opacity: 0;
	}

	30% {
		opacity: 0.7;
	}

	100% {
		opacity: 1;
	}
}

@keyframes sidebarFadeOut {
	0% {
		opacity: 1;
	}

	50% {
		opacity: 0.4;
	}

	100% {
		opacity: 0;
	}
}

@keyframes buttonSlideUp {
	from {
		opacity: 0;
		transform: translate3d(0, 10px, 0);
		-webkit-transform: translate3d(0, 10px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
	}
}

@keyframes premiumRotate {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

/* ==================== SIDEBAR ANIMATIONS - PRODUCTION OPTIMIZED ==================== */

/* Falling Ribbon Flow Animation - ULTRA DELICATE (Footer-Style) */
@keyframes sidebarRibbonFlow {

	0%,
	35% {
		transform: translate3d(0, -70%, 0) scaleY(0.8);
		-webkit-transform: translate3d(0, -70%, 0) scaleY(0.8);
		opacity: 0;
	}

	50% {
		transform: translate3d(0, 0%, 0) scaleY(1);
		-webkit-transform: translate3d(0, 0%, 0) scaleY(1);
		opacity: 0.4;
		/* Much more subtle than before */
	}

	65%,
	100% {
		transform: translate3d(0, 70%, 0) scaleY(0.8);
		-webkit-transform: translate3d(0, 70%, 0) scaleY(0.8);
		opacity: 0;
	}
}

/* Ribbon Glow Animation - ULTRA DELICATE (Footer-Style) */
@keyframes sidebarRibbonGlow {

	0%,
	40% {
		box-shadow:
			1px 0 3px rgba(var(--sidebar-accent-rgba), 0.08),
			2px 0 6px rgba(var(--sidebar-accent-rgba), 0.04);
	}

	60%,
	100% {
		box-shadow:
			1px 0 5px rgba(var(--sidebar-accent-rgba), 0.12),
			2px 0 8px rgba(var(--sidebar-accent-rgba), 0.06);
	}
}

/* ==================== UTILITY CLASSES ==================== */
.truncate-text {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 15vw;
	display: inline-block;
}

.inbox {
	max-height: calc(100vh - 127px);
}

/* ==================== RESPONSIVE OPTIMIZATIONS ==================== */
@media (max-width: 375px) {
	:root {
		--button-padding: 8px 10px;
		--button-gap: 10px;
		--button-font-size: 9px;
		--avatar-size: 28px;
	}
}

@media (min-width: 768px) {
	:root {
		--button-padding: 12px 14px;
		--button-gap: 14px;
		--button-font-size: 11px;
		--avatar-size: 36px;
	}
}


/* ==================== CHAT ANIMATION VARIABLES - FOOTER MODEL ==================== */
:root {
	/* Footer-Style Animation Timing */
	--chat-glow-duration: 8s;
	--chat-scale-duration: 5.6s;
	--chat-accent-rgba: 59, 130, 246;
}

/* ==================== MAIN CHAT COMPONENTS - GPU ACCELERATED ==================== */
.chat-messages {
	flex: 1;
	overflow-y: auto;
	padding: 16px;
	padding-top: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
	/* transition: opacity 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
	box-sizing: border-box;
	min-height: 0;
}

/* Стилове за чат изгледа */
.chat-view {
	overflow-y: auto;
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--bg-primary);
	z-index: 100;
}

/* ==================== CHAT HEADER - ULTRA PERFORMANCE WITH SINGLE HARMONY ANIMATION ==================== */
.chat-header {
	padding: 4px 12px;
	/* Further reduced for sidebar consistency */
	background: linear-gradient(90deg, var(--bg-secondary) 0%, rgba(18, 20, 28, 0.98) 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	/* Reduced gap for compactness */
	overflow: hidden;
	flex-shrink: 0;
}

.chat-header::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(43, 82, 120, 0.15) 0%,
			rgba(43, 82, 120, 0.1) 30%,
			rgba(43, 82, 120, 0.05) 60%,
			transparent 80%);
	z-index: 0;
	pointer-events: none;
}

.chat-header::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.3), transparent);
}

/* ==================== USER INFO & ACTIONS - GPU ACCELERATED ==================== */
.chat-user-info {
	display: flex;
	align-items: center;
	gap: 8px;
	position: relative;
	z-index: 2;
	opacity: 1;

	/* Subtle glow effect for professional look */
	filter:
		drop-shadow(0 0 2px rgba(var(--chat-accent-rgba), 0.15)) drop-shadow(0 1px 1px rgba(var(--chat-accent-rgba), 0.1));
	-webkit-filter:
		drop-shadow(0 0 2px rgba(var(--chat-accent-rgba), 0.15)) drop-shadow(0 1px 1px rgba(var(--chat-accent-rgba), 0.1));
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	will-change: auto;
}

.chat-user-info .user-avatar {
	position: relative;
	width: var(--avatar-size);
	height: var(--avatar-size);
	margin: 6px 0px 6px 0px;
	/* Reduced margin for compactness */
	display: flex;
	align-items: center;
	justify-content: center;
}

.chat-user-info .user-avatar img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(59, 130, 246, 0.1);
	display: block;
	margin: auto;
}

/* Channel emoji styling optimized for compactness */
.chat-user-info .user-avatar .channel-emoji {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	border-radius: 50%;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}

.chat-user-info .status-indicator {
	position: absolute;
	bottom: -1px;
	right: -1px;
	width: 10px;
	height: 10px;
	border-width: 2px;
	border-radius: 50%;
	border: 2px solid var(--bg-primary);
}

.chat-user-info .status-indicator.online-indicator {
	background-color: #44b700;
}

.chat-user-info .status-indicator.away-indicator {
	background-color: #ff9800;
}

.chat-user-info .status-indicator.offline-indicator {
	background-color: #bdbdbd;
}

.chat-header .user-details {
	display: flex;
	flex-direction: column;
	gap: 1px;
	position: relative;
	z-index: 2;
}

.chat-header .user-name {
	font-size: var(--label-font-size);
	/* Synchronized with sidebar.css */
	font-weight: 500;
	color: var(--text-primary);
}

.chat-header .user-status {
	font-size: var(--sub-label-font-size);
	/* Synchronized with sidebar.css */
	color: var(--text-secondary);
}

.chat-header .action-button {
	width: 36px;
	height: 36px;
	font-size: 18px;
	opacity: 1;
	transform: translateY(0px);
	/* animation: fadeInDown 0.4s ease forwards 0.2s; */
}

/* ==================== CHANNEL TABS & INPUT - ULTRA PERFORMANCE ==================== */
/* Общи стилове за анимации */
.chat-input {
	display: flex;

}

/* ⚡ CHANNEL TABS ANIMATION: Controlled by JavaScript NavigationManager */
.channel-tabs {
	display: flex;
	opacity: 1;
	transform: translateY(0);
}

/* ==================== ULTRA FAST & LOW CPU HIDING ANIMATIONS ==================== */

.chat-input.hiding {
	opacity: 0;
	transform: translate3d(0, 10px, 0);
	pointer-events: none;
}

.channel-tabs.hiding {
	opacity: 0;
	transform: translate3d(0, -10px, 0);
	pointer-events: none;
}

.chat-header.hiding {
	opacity: 0;
	transform: translate3d(0, -8px, 0);
	pointer-events: none;
	/* REMOVED: transition: opacity 0.05s ease-out, transform 0.05s ease-out; */
}

.activity-date.hiding {
	opacity: 0;
	transform: translate3d(0, -5px, 0);
	pointer-events: none;
	/* transition: opacity 0.05s ease-out, transform 0.05s ease-out; */
	/* 🚫 COMMENTED: conflicts with JS animations */
}

.message-wrapper.hiding {
	opacity: 0;
	transform: translate3d(-15px, 0, 0);
	pointer-events: none;
	/* transition: opacity 0.06s ease-out, transform 0.06s ease-out; */
	/* 🚫 COMMENTED: conflicts with JS animations */
}

.chat-categories.hiding {
	opacity: 0;
	transform: translate3d(0, -15px, 0);
	pointer-events: none;
	/* transition: opacity 0.08s ease-out, transform 0.08s ease-out; */
	/* 🚫 COMMENTED: conflicts with JS animations */
}



/* ==================== ULTRA FAST & LOW CPU SHOWING ANIMATIONS ==================== */

.chat-header {
	display: flex;
	opacity: 1;
	transform: translate3d(0, 0, 0);
	/* REMOVED: transition: opacity 0.12s ease-out, transform 0.12s ease-out; */
}

.chat-input {
	display: flex;
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.activity-date {
	display: block;
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition: opacity 0.10s ease-out, transform 0.10s ease-out;
}

.message-wrapper {
	display: block;
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition: opacity 0.12s ease-out, transform 0.12s ease-out;
}

.chat-categories {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition: opacity 0.18s ease-out, transform 0.18s ease-out;
}



/* Специфични стилове за channel-tabs */
.channel-tabs {
	padding: 4px;
	background: var(--bg-secondary);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	width: 100%;
	flex-shrink: 0;
}

/* Специфични стилове за chat-input */
.chat-input {
	position: relative;
	margin: 0;
	padding: 12px 8px 16px 8px;
	margin-bottom: calc(var(--footer-height) + var(--footer-safe-area) + 12px);
	background: linear-gradient(90deg,
			rgba(30, 41, 59, 0.4) 0%,
			rgba(18, 20, 28, 0.98) 50%,
			rgba(30, 41, 59, 0.4) 100%);
	border-top: 1px solid rgba(148, 163, 184, 0.1);
	z-index: 101;
	display: flex;
	flex-direction: column;
	gap: 0px;
	box-sizing: border-box;
	flex-shrink: 0;
	isolation: isolate;
	-webkit-perspective: 1000px;
	perspective: 1000px;
}

/* New Chat Input Container */
.chat-input-container {
	display: flex;
	align-items: stretch;
	gap: 12px;
	width: 100%;
	height: 100%;
	min-height: 60px;
}

.left-section {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 4px;
	height: 100%;
}

.input-tools {
	display: flex;
	justify-content: flex-start;
	/* Align all buttons to left */
	align-items: center;
	height: 22px;
	gap: 30px;
	/* Restored original gap */
	flex-shrink: 0;
}

.input-tools button {
	width: 18px;
	height: 18px;
	border: none;
	border-radius: 3px;
	background: transparent;
	color: var(--text-secondary);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	/* Compact emoji size */
	line-height: 1;
	transition: none;
	padding: 0;
	margin: 0;
}

.input-tools button:nth-child(2) {
	transform: translateY(-2px);
	/* Move photo icon 2px up */
}

.right-section {
	flex-shrink: 0;
	display: flex;
	align-items: stretch;
	height: 100%;
}

/* Send Button - Same Style as Tool Buttons but Full Height */
.chat-input .send-button {
	width: 80px;
	/* Increased width for better proportion */
	height: 100% !important;
	min-height: 60px;
	border: none;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.1);
	color: var(--text-secondary);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	transition: all 0.2s ease;
	flex-direction: column;
	gap: 2px;
	flex: 1;
}

.chat-input .send-button:hover {
	background: rgba(255, 255, 255, 0.15);
	transform: scale(1.02);
}

.chat-input .send-button:active {
	transform: scale(0.98);
}

.chat-input .send-button .send-text {
	font-size: 10px;
	font-weight: 500;
}

/* Когато chat-categories са показани, добавяме още clear space */
.activity-view:has(.chat-categories:not([style*="display: none"])) .chat-input {
	margin-bottom: calc(var(--footer-height) + var(--footer-safe-area) + 60px);
}

/* Fallback без :has() - за по-стари браузъри */
.chat-categories:not([style*="display: none"])~.activity-container .chat-input,
.activity-view.has-categories .chat-input {
	margin-bottom: calc(var(--footer-height) + var(--footer-safe-area) + 60px);
}

.chat-input::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(59, 130, 246, 0.3), transparent);
}

.chat-input .input-wrapper {
	display: flex;
	gap: 6px;
	align-items: center;
	background: linear-gradient(135deg, rgba(30, 41, 59, 0.8) 0%, rgba(51, 65, 85, 0.6) 100%);
	border: 1px solid rgba(148, 163, 184, 0.3);
	border-radius: 12px;
	padding: 6px 8px;
	min-height: 40px;
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	/* transition: all 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
}

.chat-input .input-wrapper:focus-within {
	background: linear-gradient(135deg, rgba(30, 41, 59, 0.9) 0%, rgba(59, 130, 246, 0.15) 100%);
	border-color: rgba(59, 130, 246, 0.5);
	box-shadow:
		inset 0 1px 3px rgba(0, 0, 0, 0.15),
		0 0 0 2px rgba(59, 130, 246, 0.25),
		0 2px 12px rgba(59, 130, 246, 0.15),
		0 0 20px rgba(59, 130, 246, 0.08);
}

.chat-input .actions-wrapper {
	display: flex;
	align-items: center;
	gap: 4px;
	width: 100%;
}

.chat-input .attachment-button,
.chat-input .record-button {
	height: 34px;
	width: 28px;
	border-radius: 8px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.15);
	/* transition: all 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.chat-input .attachment-button:hover,
.chat-input .record-button:hover {
	background: rgba(59, 130, 246, 0.2);
	border-color: rgba(59, 130, 246, 0.25);
	transform: translateY(-1px);
}

.chat-input .attachment-button:active,
.chat-input .record-button:active {
	transform: translateY(1px);
}



.chat-input .message-input {
	min-height: 28px;
	padding: 6px 10px;
	font-size: 10px;
	line-height: 1.4;
}

.chat-input .message-input::placeholder {
	font-size: 9px;
	background: linear-gradient(45deg, var(--text-secondary) 0%, rgba(148, 163, 184, 0.8) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	opacity: 0.8;
}

/* Chat Input Error State */
.chat-input.error .message-input {
	border-color: var(--error-color, #ff4444) !important;
	background-color: rgba(255, 68, 68, 0.1);
	box-shadow: 0 0 0 2px rgba(255, 68, 68, 0.25);
}

/* Send Button Styling - Gradient Style */
.chat-input .submit-button,
.chat-input .send-button {
	padding: 8px 14px;
	height: 34px;
	font-size: 10px;
	border-radius: 12px;
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.3) 0%, rgba(79, 70, 229, 0.25) 100%);
	border: 1px solid rgba(99, 102, 241, 0.4);
	color: var(--text-primary);
	display: flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	/* transition: all 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */

}

.chat-input .submit-button .send-text,
.chat-input .send-button .send-text {
	font-size: 9px;
	font-weight: 500;
}

.chat-input .submit-button .send-icon,
.chat-input .send-button .send-icon {
	font-size: 10px;
}

.chat-input .submit-button:hover,
.chat-input .send-button:hover {
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.4) 0%, rgba(79, 70, 229, 0.35) 100%);
	border-color: rgba(99, 102, 241, 0.6);
	box-shadow:
		0 2px 8px rgba(59, 130, 246, 0.25),
		0 0 16px rgba(59, 130, 246, 0.12),
		inset 0 1px 2px rgba(255, 255, 255, 0.1);
	transform: translateY(-1px);
	-webkit-transform: translate3d(0, -1px, 0);
}


/* ==================== CHANNEL TABS - GPU ACCELERATED ==================== */
.channel-tab {
	flex: 1;
	min-height: 24px;
	border-radius: 6px;
	font-size: 9px;
	color: var(--text-secondary);
	background: transparent;
	border: none !important;
	cursor: pointer;
	transition: all 0.2s ease;
	position: relative;
	margin: 0 2px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 10px;
	opacity: 1;
	transform: translateY(5px);
	animation: fadeInDown 0.3s ease forwards;
}

/* Добавяме нова анимация за изчезване нагоре */
@keyframes fadeOutUp {
	from {
		opacity: 1;
		transform: translateY(0);
	}

	to {
		opacity: 0;
		transform: translateY(-10px);
	}
}

@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.channel-tab.active {
	color: var(--accent-blue);
	background: rgba(59, 130, 246, 0.1);
	font-weight: 500;
}

.channel-tab.active::before {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 50%;
	transform: translateX(-50%);
	width: 20px;
	height: 2px;
	background: var(--accent-blue);
	border-radius: 2px;
}

/* Добавяме ripple ефект при клик */
.channel-tab::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.2) 0%,
			transparent 50%);
	opacity: 0;
	transform: scale(0.5);
	/* transition: all 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
}


/* ==================== PHOTO GRID - ULTRA PERFORMANCE ==================== */
.photos-grid {
	display: flex;
	flex-direction: column;
	gap: 36px;
	padding: 20px;
	max-width: 100%;
	box-sizing: border-box;
}

.photo-item {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: transparent;
	max-width: 600px;
	margin: 0 auto;
	width: 100%;
	opacity: 0;
	transform: translateY(20px);
	animation: fadeInUp 0.3s ease forwards;
	animation-delay: calc(var(--photo-index, 0) * 0.1s);
}

/* ==================== PHOTO COMPONENTS - GPU OPTIMIZED ==================== */
.photo-header {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 14px;
}

.photo-header .user-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2px solid var(--accent-blue);
}

.photo-container {
	position: relative;
	width: 100%;
	border-radius: 12px;
	overflow: hidden;
	background: var(--bg-secondary);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.photo-container img {
	width: 100%;
	height: auto;
	display: block;
}

/* ==================== PREMIUM EFFECTS - GPU OPTIMIZED ==================== */
.feature-icon.premium-icon {
	position: relative;
	z-index: 2;
}

.feature-icon.premium-icon::before {
	content: '';
	position: absolute;
	inset: -8px;
	background: radial-gradient(circle at center,
			rgba(43, 82, 120, 0.2) 0%,
			rgba(43, 82, 120, 0.15) 30%,
			rgba(43, 82, 120, 0.1) 50%,
			transparent 70%);
	z-index: -1;
	filter: blur(2px);
}

/* Стилове за user details */
.premium-title {
	font-size: 9px;
	font-weight: 500;
	color: var(--text-primary);
	position: relative;
}

.premium-title::before {
	content: '';
	position: absolute;
	inset: -4px -8px;
	background: radial-gradient(circle at center,
			rgba(43, 82, 120, 0.15) 0%,
			rgba(43, 82, 120, 0.1) 40%,
			transparent 70%);
	z-index: -1;
	opacity: 0.5;
}

.premium-feature {
	font-size: 7px;
	color: var(--text-secondary);
	position: relative;
}

/* Анимации */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(10px);
		-webkit-transform: translate3d(0, 10px, 0);
	}

	to {
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInRight {
	from {
		opacity: 0;
		transform: translateX(-100%);
		-webkit-transform: translate3d(-100%, 0, 0);
	}

	to {
		opacity: 1;
		transform: translateX(0);
		-webkit-transform: translate3d(0, 0, 0);
	}
}

@keyframes zoomIn {
	from {
		opacity: 0;
		transform: scale(0.8);
		-webkit-transform: translate3d(0, 0, 0) scale(0.8);
	}

	to {
		opacity: 1;
		transform: scale(1);
		-webkit-transform: translate3d(0, 0, 0) scale(1);
	}
}

/* Анимация за градиента */
@keyframes gradientMove {
	0% {
		background-position: -200% 0;
		transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
	}

	100% {
		background-position: 200% 0;
		transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
	}
}


/* ==================== CENTRALIZED MESSAGES STYLES ==================== */
/* ==================== OPTIMIZED MESSAGE COMPONENTS - ACTIVITY STYLE ==================== */

/* Стилизираме съобщенията като activity items */
.message {
	max-width: 80%;
	padding: 8px 10px 16px 10px;
	position: relative;
	border-left: 2px solid transparent;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	background: linear-gradient(90deg, rgba(18, 20, 28, 0.95) 0%, transparent 100%);
	border: 1px solid transparent;
	opacity: 1;
	font-size: 12px;
	line-height: 1.3;
}

/* Различни анимации за получени и изпратени съобщения */
.message.received {
	align-self: flex-start;
	border-radius: 12px;
	border-bottom-left-radius: 4px;
	background: linear-gradient(90deg, rgba(59, 130, 246, 0.1), transparent);
}

.message.sent {
	align-self: flex-end;
	border-radius: 12px;
	border-bottom-right-radius: 4px;
	background: linear-gradient(90deg, rgba(59, 130, 246, 0.2), rgba(59, 130, 246, 0.1));
	color: var(--text-primary);
	text-align: right;
}

/* ==================== АНИМАЦИИ САМО ЗА ПЪРВОНАЧАЛНО ЗАРЕЖДАНЕ ==================== */
/* Тези анимации се прилагат САМО при първоначално зареждане на страницата,
   НЕ при добавяне на нови съобщения (за да няма премигване) */

.message.initial-load {
	opacity: 0;
	animation: fadeIn 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

/* Анимация за снимки САМО при първоначално зареждане */
.message.initial-load img.chat-image {
	animation: imageLoad 0.3s ease forwards;
}

/* Добавяме клас за анимация при изчезване */
.message.removing {
	animation: fadeOut 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;

	/* Text-Safe Remove Animation */
	will-change: opacity;
}

/* ==================== MESSAGE ANIMATIONS - GPU ACCELERATED ==================== */
/* Опростени анимации само с fade ефект */
@keyframes fadeIn {
	0% {
		opacity: 0;
		transform: translateY(10px);
		-webkit-transform: translateY(10px);
	}

	30% {
		opacity: 0.7;
		transform: translateY(5px);
		-webkit-transform: translateY(5px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translateY(0);
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translateY(0);
	}

	50% {
		opacity: 0.4;
		transform: translateY(-5px);
		-webkit-transform: translateY(-5px);
	}

	100% {
		opacity: 0;
		transform: translateY(-10px);
		-webkit-transform: translateY(-10px);
	}
}

.message.received.removing {
	animation: fadeOutLeft 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.message.sent.removing {
	animation: fadeOutRight 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes fadeOutLeft {
	0% {
		opacity: 1;
		transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
	}

	100% {
		opacity: 0;
		transform: translate(-20px, -10px);
		-webkit-transform: translate(-20px, -10px);
	}
}

@keyframes fadeOutRight {
	0% {
		opacity: 1;
		transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
	}

	100% {
		opacity: 0;
		transform: translate(20px, -10px);
		-webkit-transform: translate(20px, -10px);
	}
}

/* ==================== MESSAGE HOVER EFFECTS - GPU OPTIMIZED ==================== */
.message::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	background: linear-gradient(to bottom, transparent, var(--accent-blue), transparent);
	opacity: 0;
	/* transition: opacity 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
}

/* Hover ефекти САМО за текстови съобщения (без снимки) */




/* ==================== MESSAGE IMAGES - GPU OPTIMIZED ==================== */
/* Стилове за снимки в чата - FULL SCREEN МАКСИМАЛНИ РАЗМЕРИ */
.message img.chat-image {
	width: 100%;
	max-width: 100%;
	height: auto;
	min-height: 200px;
	max-height: 400px;
	border-radius: 12px;
	margin: 5px 0;
	/* transition: all 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
	position: relative;
	cursor: pointer;
	object-fit: cover;
}

/* .message img.chat-image:hover - Премахнат hover ефект */

/* ==================== MESSAGES WITH IMAGES - SUBTLE POPUP ==================== */
/* Съобщения със снимки - субтилен popup ефект */
.message:has(.image-container) {
	background: rgba(255, 255, 255, 0.02);
	border-radius: 8px;
	padding: 4px;
	/* transition: background 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
}

/* .message:has(.image-container):hover - Премахнат hover ефект */

/* Image Container - Subtle popup effect */
.message .image-container {
	width: 100%;
	max-width: 100%;
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
	/* transition: box-shadow 0.3s ease, transform 0.3s ease; */
	/* 🚫 REMOVED: Conflicts with NavigationManager v6 fade animations */
	padding-bottom: 5px;
}

/* .message .image-container:hover - Премахнат hover ефект */

/* .message .image-container:hover - Премахнат hover ефект */

/* @keyframes shine - Премахната анимация, тъй като не се използва */

/* Анимация при зареждане на снимки - САМО за initial-load клас */

@keyframes imageLoad {
	0% {
		opacity: 0;
		transform: translate3d(0, 10px, 0) scale(0.95);
		-webkit-transform: translate3d(0, 10px, 0) scale(0.95);
	}

	100% {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
		-webkit-transform: translate3d(0, 0, 0) scale(1);
	}
}

/* ==================== RESPONSIVE FULL SCREEN IMAGES ==================== */
/* Мобилни устройства - максимални размери */
@media (max-width: 480px) {
	.message img.chat-image {
		max-height: 300px;
		min-height: 150px;
	}

	.message {
		max-width: 95%;
		font-size: 13px;
		/* По-голям текст на мобилни */
	}

	.message-text {
		font-size: 13px;
	}
}

/* Таблети - средни размери */
@media (min-width: 481px) and (max-width: 768px) {
	.message img.chat-image {
		max-height: 350px;
		min-height: 180px;
	}

	.message {
		max-width: 85%;
		font-size: 12px;
	}

	.message-text {
		font-size: 12px;
	}
}

/* Десктоп - максимални размери */
@media (min-width: 769px) {
	.message img.chat-image {
		max-height: 450px;
		min-height: 220px;
	}

	.message {
		max-width: 80%;
		font-size: 12px;
	}

	.message-text {
		font-size: 12px;
	}
}

/* ==================== MESSAGE WRAPPERS & AVATARS - GPU OPTIMIZED ==================== */
/* Добавяме стилове за wrapper и аватари */
.message-wrapper {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 6px 0;
	width: 100%;
	overflow: visible;
}

/* Добавяме класове за видимост */
.message-wrapper.hidden {
	display: none !important;
}

.message-wrapper.visible {
	display: flex !important;
}

.message-avatar {
	top: 4px;
	margin-top: 4px;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	border-radius: 50%;
	overflow: visible;
	position: relative;
}

.message-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	overflow: hidden;
}

/* По-малки статус индикатори САМО за message аватарите в чата */
.message-avatar .status-indicator {
	width: 6px;
	height: 6px;
	border: 1px solid var(--bg-primary);
	z-index: 10;
	position: absolute;
	bottom: -1px;
	right: -1px;
	border-radius: 50%;
}

/* ==================== MESSAGE LAYOUT OPTIMIZATIONS ==================== */
/* Коригираме подравняването за изпратени съобщения */
.message-wrapper:has(.message.sent) {
	flex-direction: row-reverse;
}

/* Скриваме аватара за изпратени съобщения */
.message.sent+.message-avatar {
	display: none;
}

/* Увеличаваме максималната ширина на съобщенията за FULL SCREEN снимки */
.message {
	max-width: 90%;
}

/* Стил за текста на съобщенията */
.message-text {
	font-size: 12px;
	line-height: 1.4;
	word-wrap: break-word;
	overflow-wrap: break-word;
	margin: 2px 0 4px 0;
}

/* ==================== MESSAGE TIME STYLING - BALANCED OVERLAY ==================== */
.message-time {
	position: absolute;
	bottom: 3px;
	right: 5px;
	font-size: 7px;
	color: var(--text-secondary);
	opacity: 0.6;
	background: rgba(0, 0, 0, 0.08);
	padding: 1px 3px;
	border-radius: 4px;
	letter-spacing: 0.1px;
	backdrop-filter: blur(1px);
	-webkit-backdrop-filter: blur(1px);
	z-index: 1;
	line-height: 1.1;
}

.message-time::before {
	content: '';
	/* Премахнахме иконата за повече компактност */
}

/* Hover ефект за по-добра видимост при нужда - САМО за текстови съобщения */
.message:not(:has(.image-container)):hover .message-time {
	opacity: 0.7;
	background: rgba(0, 0, 0, 0.15);
	transition: all 0.2s ease;
}

/* Времето е сега overlay - не е нужно допълнително padding */

/* ==================== CENTRALIZED TYPOGRAPHY STYLES ==================== */
/* Интегрирани стилове от typography.css за централизиран контрол */

/* Message Author */
.message-author {
	font-size: 11px;
	font-weight: 600;
}

/* Gender-based Username Styling */
.male {
	color: var(--accent-blue) !important;
	background: linear-gradient(90deg, #3b82f6, #60a5fa) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

.female {
	color: var(--accent-indigo) !important;
	background: linear-gradient(90deg, #e879f9, #d946ef) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}





/* Enhanced Username Styling */
.username {
	color: var(--accent-blue);
	text-decoration: none;
	font-weight: 500;
	background: linear-gradient(90deg, var(--accent-blue), #63b3ed);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	position: relative;
	display: inline-block;
}

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

.username::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, var(--accent-blue), transparent);
	transform: scaleX(0);
	transition: transform 0.3s ease;
	transform-origin: left;
}

.username:hover::after {
	transform: scaleX(1);
}

.username::before {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 100%;
	height: 1px;
	background: var(--accent-blue);
	transform: scaleX(0);
	transition: transform 0.3s ease;
	transform-origin: right;
}

.username:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}

/* Username в съобщенията - по-малък размер */
.message-header .username {
	font-size: calc(var(--label-font-size) - 1px);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ==================== END CENTRALIZED TYPOGRAPHY STYLES ==================== */

/* ==================== CENTRALIZED ACTIVITY STYLES ==================== */
/* Интегрирани стилове от activity.css за централизиран контрол */

/* Base Layout */
.activity-view {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100vh - 58.5px);
	background: var(--bg-primary);
	z-index: 1000;
	display: none;
	transform: translateX(100%);
}

/* View което не може да се slide-ва назад */
.activity-view.no-slide-back {
	z-index: 0;
}

/* Активно състояние - само това се контролира от CSS */
.activity-view.show {
	transform: translateX(0);
	/* transition: transform 250ms ease; */
	/* 🚫 COMMENTED: conflicts with JS navigation animations */
	display: grid;
	grid-template-rows: auto 0fr 1fr;
	grid-gap: 0;
	grid-template-areas:
		"header"
		"categories"
		"content";
}

/* Динамично показване на categories когато са активни */
.activity-view.show:has(.chat-categories:not([style*="display: none"])) {
	grid-template-rows: auto auto 1fr;
}

/* Fallback за браузъри без :has() поддръжка */
.activity-view.show.has-visible-categories {
	grid-template-rows: auto auto 1fr;
}

/* ВАЖНО - това е за SubView v ViewManager JS */
.activity-main>.activity-view {
	position: absolute;
}

/* Main Content */
.activity-main {
	background: var(--bg-primary);
	height: 100%;
	overflow-y: hidden;
	padding: 0;
	margin: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	animation: fadeIn 0.3s ease-out;
	box-sizing: border-box;
	min-height: 0;
}

.activity-main.removing {
	animation: fadeOut 0.3s ease-out forwards;
}

/* Main Container Ambient Background */
.activity-main::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 200px;
	background: linear-gradient(to bottom, rgba(59, 130, 246, 0.03), transparent);
	pointer-events: none;
	z-index: 1;
}

/* Main Container Falling Light Ribbon Animation - Footer Model */
.activity-main::after {
	content: '';
	position: absolute;
	top: -20px;
	right: 0;
	width: 3px;
	height: calc(100% + 40px);
	background: linear-gradient(to bottom,
			transparent 0%,
			rgba(var(--footer-accent-rgba), 0.05) 10%,
			rgba(var(--footer-accent-rgba), 0.15) 20%,
			rgba(var(--footer-accent-rgba), 0.3) 30%,
			rgba(var(--footer-accent-rgba), 0.5) 40%,
			rgba(var(--footer-accent-rgba), 0.7) 50%,
			rgba(var(--footer-accent-rgba), 0.5) 60%,
			rgba(var(--footer-accent-rgba), 0.3) 70%,
			rgba(var(--footer-accent-rgba), 0.15) 80%,
			rgba(var(--footer-accent-rgba), 0.05) 90%,
			transparent 100%);
	pointer-events: none;
	z-index: 10;
	border-radius: 2px;

	/* Initial hidden state before animation */
	opacity: 0;
	transform: translate3d(0, -100%, 0);
	-webkit-transform: translate3d(0, -100%, 0);

	/* Footer-Style Animation with Same Timing */
	animation:
		mainContainerRibbonFlow var(--footer-glow-duration) ease-in-out infinite -2s,
		mainContainerRibbonGlow var(--footer-scale-duration) ease-in-out infinite -1s;
	animation-delay: 0s, 0s;
	animation-fill-mode: both, both;
}

/* Activity Items */
.activity-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* Header */
.activity-header {
	background: linear-gradient(90deg,
			var(--bg-secondary) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	position: relative;
	padding: 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 72px;
	position: relative;
	overflow: hidden;
	grid-area: header;
	flex-shrink: 0;
	z-index: 1001;
}

/* Основен градиент за фона */
.activity-header::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg,
			transparent,
			rgba(59, 130, 246, 0.5),
			transparent);
}

/* Долна линия с анимация */
.activity-header::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg,
			transparent,
			rgba(59, 130, 246, 0.3),
			transparent);
}

/* Горен блясък */
.activity-title {
	display: flex;
	align-items: center;
	gap: 13px;
	position: relative;
	z-index: 2;
	opacity: 1;
	transform: scale(1);
	transform-origin: center;
	/* animation: zoomIn 0.25s ease forwards; */
}

.activity-title::before {
	content: '';
	position: absolute;
	inset: -20px -30px;
	background: radial-gradient(circle at center,
			rgba(43, 82, 120, 0.2) 0%,
			rgba(43, 82, 120, 0.15) 20%,
			rgba(43, 82, 120, 0.1) 40%,
			transparent 70%);
	z-index: -1;
	filter: blur(3px);
}

.activity-title span {
	font-size: 24px;
	filter: drop-shadow(0 2px 4px rgba(255, 215, 0, 0.2));
	position: relative;
	z-index: 2;
	line-height: 1;
	display: flex;
	align-items: center;
	height: 24px;
}

.activity-title img {
	position: relative;
	z-index: 2;
	height: 24px;
	width: auto;
	display: block;
	vertical-align: middle;
}

/* BG Logo - специфично позициониране */
.activity-title img[src*="chatnetwork_logotype_bg_bright"] {
	top: 2px;
}

/* EN Logo - без позициониране */
.activity-title img[src*="chatnetwork_logotype_bright"] {
	top: -2px;
}

.header-buttons {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
}

/* Container */
.activity-container {
	display: grid;
	grid-template-columns: 38% 1fr;
	grid-gap: 0;
	height: 100%;
	overflow: hidden;
	box-sizing: border-box;
	min-height: 0;
	grid-area: content;
}

.activity-item {
	padding: 8px 12px;
	font-size: 10px;
	color: var(--text-primary);
	position: relative;
	border-left: 2px solid transparent;
	transition: all 0.3s ease;
	background: linear-gradient(90deg,
			rgba(18, 20, 28, 0.95) 0%,
			transparent 100%);
	border: 1px solid transparent;
	position: relative;
	overflow: hidden;
	opacity: 0;
	transform: translateY(10px);
	animation: fadeInUp 0.3s ease forwards;
}

.activity-item::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
	background: linear-gradient(to bottom,
			transparent,
			var(--accent-blue),
			transparent);
	opacity: 0;
	transition: opacity 0.3s ease;
}

.activity-item:hover::before {
	opacity: 1;
}

.activity-item:hover {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.05),
			transparent);
	border-color: rgba(59, 130, 246, 0.1);
	transform: translateX(4px);
}

/* Стил за нови известия в списъка */
.activity-item.unread {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1),
			transparent);
	position: relative;
}

.activity-item.unread::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 3px;
	background: var(--accent-blue);
	border-radius: 2px;
}

.activity-item.unread::after {
	content: '•';
	position: absolute;
	right: 8px;
	top: 8px;
	transform: translateY(-50%);
	color: #ff3b3b;
	font-size: 16px;
	animation: softPulse 2s infinite;
}

.activity-item.unread:hover {
	background: linear-gradient(90deg,
			rgba(255, 59, 59, 0.05),
			transparent);
}

/* Подобряваме activity-comment */
.activity-comment {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.05),
			transparent);
	padding: 8px 12px;
	border-radius: 8px;
	margin-top: 4px;
	position: relative;
	border-left: 2px solid var(--accent-blue);
}

.activity-comment::before {
	content: '"';
	position: absolute;
	left: 8px;
	top: -4px;
	font-size: 20px;
	color: var(--accent-blue);
	opacity: 0.3;
}

/* Стилове за датите - БЕЗ ПРЕМИГВАНЕ */
.activity-date {
	position: relative;
	overflow: hidden;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1),
			transparent 70%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	border-left: 2px solid var(--accent-blue);
	padding: 6px 12px;
	font-size: 8px;
	color: var(--accent-blue);
	font-weight: 500;
	letter-spacing: 0.3px;
	border-radius: 4px;
	margin: 12px 0 6px;
	min-height: 24px;
	max-height: 24px;
	opacity: 1;
	transform: none;
	/* Премахнати анимации за избягване на премигване */
}

.activity-date::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 40px;
	right: 8px;
	height: 1px;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.2),
			transparent 80%);
}

/* Подобряваме activity-time */
.activity-time {
	font-size: 9px;
	color: var(--text-secondary);
	margin-top: 4px;
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 2px 6px;
	background: rgba(59, 130, 246, 0.1);
	border-radius: 10px;
}

.activity-time::before {
	content: '⌚';
	font-size: 8px;
	opacity: 0.7;
}

/* Добавяме стилове за снимки в активностите */
.activity-item-with-image {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.activity-item {
	border-radius: 8px;
	margin: 8px 0;
}

.activity-image {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	margin-top: 0;
	border: 2px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease;
	position: relative;
}

.activity-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.activity-item:hover .activity-image {
	border-color: rgba(59, 130, 246, 0.3);
	transform: scale(1.05);
}

.activity-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(45deg,
			transparent,
			rgba(59, 130, 246, 0.1),
			transparent);
	transform: translateX(-100%);
	transition: transform 0.3s ease;
}

.activity-item:hover .activity-image::after {
	transform: translateX(100%);
}

/* Стилове за grid със снимки */
.activity-photo-grid {
	margin: 8px 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 4px;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.activity-photo-grid img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	transition: all 0.3s ease;
}

.activity-photo-grid img:hover {
	transform: scale(1.05);
	filter: brightness(1.1);
}

.activity-photo-grid::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(45deg,
			transparent 40%,
			rgba(59, 130, 246, 0.1) 45%,
			rgba(59, 130, 246, 0.2) 50%,
			rgba(59, 130, 246, 0.1) 55%,
			transparent 60%);
	transform: translateX(-100%);
	transition: transform 0.3s ease;
	z-index: 2;
	pointer-events: none;
}

.activity-photo-grid:hover::before {
	transform: translateX(100%);
}

/* Стилове за коментари */
.activity-comment {
	font-size: 10px;
	color: var(--text-primary);
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.05),
			transparent);
	padding: 6px 8px;
	border-radius: var(--radius-sm);
	margin: 4px 0;
	border-left: 2px solid var(--accent-blue);
	border: 1px solid rgba(59, 130, 246, 0.1);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	position: relative;
	overflow: hidden;
}

.activity-comment::before {
	content: '"';
	position: absolute;
	top: 0;
	left: 8px;
	font-size: 24px;
	color: rgba(59, 130, 246, 0.2);
	opacity: 0.5;
}

/* Добавяме ефект на typing за коментарите */
.activity-comment::after {
	content: '|';
	position: absolute;
	right: 8px;
	top: 3px;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 12px;
	animation: typing 1s infinite;
	opacity: 0.5;
}

@keyframes typing {

	0%,
	100% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}
}

.grid {
	display: grid;
}

/* Добавете тези нови стилове */
.activity-header-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	line-height: 1.2;
}

.activity-header-content .username {
	margin: 0;
	padding: 0;
}

.activity-header-content .activity-text {
	font-size: 10px;
	color: var(--text-secondary);
	white-space: normal;
}

/* Добавям стилове за бутоните за управление на приятелства */
.activity-buttons {
	display: flex;
	gap: 8px;
	margin-top: 6px;
	margin-bottom: 4px;
}

.activity-buttons button {
	padding: 4px 12px;
	border-radius: 4px;
	font-size: 10px;
	border: none;
	cursor: pointer;
	transition: all 0.2s ease;
}

.accept-request,
.activity-buttons button.accept-request {
	background: var(--accent-blue);
	color: white;
}

.accept-request:hover,
.activity-buttons button.accept-request:hover {
	background: var(--accent-blue-dark, #2563eb);
}

/* По-дискретни бутони за отказ и премахване */
.decline-request,
.activity-buttons button.decline-request {
	background: rgba(255, 255, 255, 0.1);
	color: var(--text-primary);
}

.decline-request:hover,
.activity-buttons button.decline-request:hover {
	background: rgba(255, 90, 90, 0.2);
	color: #ff5a5a;
}

/* Още по-дискретни стилове за отказ от покана и премахване на приятел */
.cancel-request,
.remove-friend,
.activity-buttons button.cancel-request,
.activity-buttons button.remove-friend {
	background: transparent;
	color: var(--text-secondary, rgba(255, 255, 255, 0.6));
	font-size: 9px;
	padding: 3px 10px;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.cancel-request:hover,
.remove-friend:hover,
.activity-buttons button.cancel-request:hover,
.activity-buttons button.remove-friend:hover {
	background: rgba(255, 90, 90, 0.1);
	color: rgba(255, 90, 90, 0.8);
	border-color: rgba(255, 90, 90, 0.2);
}

/* ==================== END CENTRALIZED ACTIVITY STYLES ==================== */

/* ==================== CENTRALIZED NAVIGATION STYLES ==================== */
/* Интегрирани стилове от navigations.css за централизиран контрол */



/* Навигационни бутони */
.footer-nav-button {
	position: relative;
	/* transition: transform 0.2s ease, opacity 0.2s ease; */
	/* 🚫 COMMENTED: conflicts with JS navigation animations */
}

.footer-nav-button:active {
	transform: scale(0.95);
	opacity: 0.8;
}

/* Активен навигационен бутон */
.footer-nav-button.active {
	color: var(--primary-color, #4285f4);
	font-weight: 500;
}

/* Навигационни елементи с атрибут data-navigate */
[data-navigate] {
	cursor: pointer;
	user-select: none;
	/* transition: opacity 0.2s ease; */
	/* 🚫 COMMENTED: conflicts with JS navigation animations */
}

[data-navigate]:hover {
	opacity: 0.9;
}

[data-navigate]:active {
	opacity: 0.7;
}

/* Анимации за преход между страниците */
.content-transition-enter {
	opacity: 0;
	transform: translateX(20px);
}

.content-transition-enter-active {
	opacity: 1;
	transform: translateX(0);
	/* transition: opacity 300ms, transform 300ms; */
	/* 🚫 COMMENTED: conflicts with JS navigation animations */
}

.content-transition-exit {
	opacity: 1;
	transform: translateX(0);
}

.content-transition-exit-active {
	opacity: 0;
	transform: translateX(-20px);
	/* transition: opacity 300ms, transform 300ms; */
	/* 🚫 COMMENTED: conflicts with JS navigation animations */
}

/* Забрана на събития по време на зареждане */
.loading-in-progress {
	pointer-events: none;
}

.fade-in {
	animation: fadeIn 0.3s ease forwards;
}



/* Стилове за бек бутон */
.back-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 5px 10px;
	border-radius: 50px;
	background-color: rgba(0, 0, 0, 0.05);
	color: var(--text-color, #333);
	font-size: 14px;
	cursor: pointer;
	user-select: none;
	transition: background-color 0.2s ease;
}

.back-button:hover {
	background-color: rgba(0, 0, 0, 0.1);
}

.back-button::before {
	content: '←';
	margin-right: 5px;
	font-weight: bold;
}

/* Navigation Animation Keyframes */


@keyframes levelPulse {

	0%,
	100% {
		transform: scale(1);
		opacity: 0.9;
		filter: drop-shadow(0 0 3px rgba(102, 126, 234, 0.4));
	}

	50% {
		transform: scale(1.05);
		opacity: 1;
		filter: drop-shadow(0 0 8px rgba(118, 75, 162, 0.6));
	}
}

@keyframes gradientShift {

	0%,
	100% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}
}

@keyframes sparkle {

	0%,
	100% {
		transform: scale(1) rotate(0deg);
		opacity: 0.8;
	}

	50% {
		transform: scale(1.15) rotate(5deg);
		opacity: 1;
	}
}



@keyframes cosmicNavigatorFlow {

	0%,
	100% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}
}

@keyframes textGlow {
	0% {
		filter: drop-shadow(0 0 3px rgba(79, 195, 247, 0.4));
	}

	100% {
		filter: drop-shadow(0 0 8px rgba(41, 182, 246, 0.6));
	}
}

/* ==================== END CENTRALIZED NAVIGATION STYLES ==================== */

/* ==================== CENTRALIZED COUNTER STYLES ==================== */
/* Интегрирани стилове от counter.css за централизиран контрол */

.counter {
	background: rgba(255, 59, 59, 0.15);
	color: #ff3b3b;
	padding: 2px 6px;
	border-radius: 10px;
	font-size: 8px;
	min-width: 16px;
	height: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: auto;
	font-weight: 500;
	animation: softPulse 2s infinite;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;

	/* Text-Safe Rendering */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Pulse анимация за counter */
@keyframes softPulse {

	0%,
	100% {
		opacity: 0.8;
		transform: translateY(-50%) scale(1);
	}

	50% {
		opacity: 1;
		transform: translateY(-50%) scale(1.05);
	}
}

/* ==================== END CENTRALIZED COUNTER STYLES ==================== */

/* ==================== CENTRALIZED ELEMENTS STYLES ==================== */
/* Интегрирани стилове от elements.css за централизиран контрол */

/* Close Button Global Style */
.close-button {
	position: relative;
	width: 32px;
	height: 32px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 50%;
	color: var(--text-secondary);
	font-size: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
	z-index: 9999;
	line-height: 1;
	box-sizing: border-box;
}

.close-button::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.2) 0%,
			transparent 50%);
	opacity: 0;
	transform: scale(0.5);
	transition: all 0.3s ease;
}

.close-button:active {
	transform: rotate(90deg) scale(0.95);
}

/*

.close-button:hover {
	background: rgba(59, 130, 246, 0.2);
	transform: rotate(90deg) scale(1.1);
	color: var(--accent-blue);
}



.close-button:hover::after {
	opacity: 1;
	transform: scale(2);
}
*/




/* Dark theme variation */
[data-theme="dark"] .close-button {
	background: rgba(0, 0, 0, 0.2);
	border-color: rgba(255, 255, 255, 0.05);
}

/* Light theme variation */
[data-theme="light"] .close-button {
	background: rgba(0, 0, 0, 0.05);
	border-color: rgba(0, 0, 0, 0.1);
}

/* Глобален стил за more options бутона */
.more-options-button,
.action-button {
	background: transparent;
	border: none;
	color: var(--text-secondary);
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.3s ease;
	position: relative;
	font-size: 18px;
}

/*
.more-options-button:hover,
.action-button:hover {
	background: rgba(59, 130, 246, 0.1);
	color: var(--accent-blue);
	transform: scale(1.1);
}
*/

.more-options-button::after,
.action-button::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.2) 0%,
			transparent 50%);
	opacity: 0;
	transform: scale(0.5);
	transition: all 0.3s ease;
}

.more-options-button:hover::after,
.action-button:hover::after {
	opacity: 1;
	transform: scale(2);
}

/* Добавяме ripple ефект при клик */
.more-options-button:active::after,
.action-button:active::after {
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.3) 0%,
			transparent 50%);
	transform: scale(1);
	transition: transform 0.1s ease;
}

/* Добавяме стил за disabled състояние */
.more-options-button:disabled,
.action-button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Добавяме стил за фокус */

/*
.more-options-button:focus,
.action-button:focus {
	outline: none;
	box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.3);
}
*/


/* Добавяме стил за активно състояние */
.more-options-button.active,
.action-button.active {
	background: rgba(59, 130, 246, 0.2);
	color: var(--accent-blue);
}

/* Header buttons container */
.header-buttons {
	display: flex;
	gap: 25px;
	padding: 4px;
	margin-right: 8px;
}



/* Circle Button Style for Activity Header */
.circle-button {
	width: 32px;
	height: 32px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 50%;
	color: var(--text-secondary);
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
	margin-left: 0;
	position: relative;
}

.circle-button:hover {
	background: rgba(59, 130, 246, 0.2);
	transform: scale(1.1);
	color: var(--accent-blue);
}

.circle-button:active {
	transform: scale(0.95);
}

.circle-button::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.2) 0%,
			transparent 50%);
	opacity: 0;
	transform: scale(0.5);
	transition: all 0.3s ease;
}

.circle-button:hover::after {
	opacity: 1;
	transform: scale(2);
}

/* Dark theme variation */
[data-theme="dark"] .circle-button {
	background: rgba(0, 0, 0, 0.2);
	border-color: rgba(255, 255, 255, 0.05);
}

/* Light theme variation */
[data-theme="light"] .circle-button {
	background: rgba(0, 0, 0, 0.05);
	border-color: rgba(0, 0, 0, 0.1);
}

/* Active state */
.circle-button.active {
	background: rgba(59, 130, 246, 0.2);
	color: var(--accent-blue);
}

/* Disabled state */
.circle-button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Focus state */
.circle-button:focus {
	outline: none;
	box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.3);
}

/* Button Label Style */
.circle-button .button-label {
	position: absolute;
	left: -65px;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(59, 130, 246, 0.1);
	color: var(--text-primary);
	font-size: 10px;
	padding: 4px 8px;
	border-radius: 4px;
	white-space: nowrap;
	opacity: 1;
	pointer-events: none;
	font-weight: 500;
	z-index: 100;
	border: 1px solid rgba(59, 130, 246, 0.2);
}

.circle-button:hover .button-label {
	background: rgba(59, 130, 246, 0.2);
}

/* Button Icon Style */
.circle-button .button-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ==================== END CENTRALIZED ELEMENTS STYLES ==================== */

/* ==================== CENTRALIZED FOOTER STYLES ==================== */
/* Интегрирани стилове от footer.css за централизиран контрол */

/* Footer CSS Variables */
:root {
	/* Responsive Dimensions */
	--footer-height: clamp(58px, 15vw, 64px);
	--footer-button-height: clamp(50px, 12vw, 56px);
	--footer-padding: clamp(4px, 1.5vw, 6px) 0;
	--footer-icon-size: clamp(12px, 3.5vw, 16px);
	--footer-text-size: clamp(6px, 1.8vw, 8px);
	--footer-z-index: 10001;

	/* Colors */
	--footer-bg-start: rgba(13, 15, 21, 0.98);
	--footer-bg-end: rgba(18, 20, 28, 0.95);
	--footer-border: rgba(255, 255, 255, 0.08);
	--footer-text-primary: rgba(255, 255, 255, 0.7);
	--footer-text-secondary: rgba(255, 255, 255, 0.5);
	--footer-accent: #3b82f6;
	--footer-accent-rgba: 59, 130, 246;

	/* Animation Timing - Footer Model */
	--footer-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	--footer-glow-duration: 8s;
	--footer-scale-duration: 5.6s;
	--footer-particle-duration: 10s;

	/* Mobile Safe Area */
	--footer-touch-target: 44px;
	--footer-safe-area: env(safe-area-inset-bottom, 0px);

	/* Chat Input Height */
	--chat-input-height: 60px;

	/* Animation Durations - Controlled by JavaScript */
	--fade-duration: 300ms;
}

/* Main Footer Container */
.global-footer {
	position: fixed !important;
	bottom: 0 !important;
	left: 0;
	right: 0;
	z-index: var(--footer-z-index) !important;

	width: 100%;
	height: calc(var(--footer-height) + var(--footer-safe-area));
	padding: var(--footer-padding);
	padding-bottom: calc(var(--footer-padding) + var(--footer-safe-area));

	display: flex;
	justify-content: space-evenly;
	align-items: flex-start;
	overflow: hidden;

	background: linear-gradient(to top, var(--footer-bg-start) 0%, var(--footer-bg-end) 100%);
	border-top: 1px solid var(--footer-border);

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

	box-shadow:
		0 -1px 3px rgba(0, 0, 0, 0.12),
		0 -2px 8px rgba(0, 0, 0, 0.08);

	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;

	contain: layout style paint;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
}

.global-footer[style*="position"] {
	position: fixed !important;
	bottom: 0 !important;
}

/* Ambient Background */
.global-footer::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(ellipse at center,
			rgba(43, 82, 120, 0.04) 0%,
			rgba(43, 82, 120, 0.02) 40%,
			transparent 70%);
	opacity: 0.8;
	pointer-events: none;
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	z-index: 1;
}

/* Purple Particle Float Effect */
.global-footer::after {
	content: '';
	position: absolute;
	bottom: -12px;
	left: 0;
	width: 100%;
	height: 12px;
	background: transparent;
	pointer-events: none;
	z-index: 5;
	animation: footerParticleFloat var(--footer-particle-duration) ease-in-out infinite;
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
}

/* Clean Icon Buttons */
.global-footer .footer-nav-button {
	position: relative;
	flex: 1;
	max-width: none;
	min-width: var(--footer-touch-target);
	height: var(--footer-button-height);
	margin: 0 2px;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 3px;

	background: transparent;
	border: none !important;
	border-radius: 8px;
	color: var(--footer-text-primary);
	font-size: var(--footer-text-size);
	cursor: pointer;
	overflow: hidden;

	opacity: 1;
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	/* animation: footerSlideUp 0.5s ease forwards; */
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Добавяне на светлинен ефект в background */
.global-footer .footer-nav-button::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.08) 0%,
			transparent 70%);
	opacity: 0;
	transition: opacity 0.3s ease;
	border-radius: 8px;
	z-index: -1;
}

/* Icon & Label Styling */
.global-footer .footer-nav-button span:first-child {
	font-size: var(--footer-icon-size);
	margin-bottom: 3px;
	color: rgba(90, 120, 160, 0.75);
	line-height: 1;
	transition: var(--footer-transition);
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);

	/* Балансирани монохромни емоджи */
	filter: grayscale(1) brightness(0.85) opacity(0.8);
	-webkit-filter: grayscale(1) brightness(0.85) opacity(0.8);
}

.global-footer .footer-nav-button .nav-label {
	font-size: var(--footer-text-size);
	opacity: 0.65;
	color: rgba(130, 150, 190, 0.7);
	font-weight: 500;
	line-height: 1.1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	transition: var(--footer-transition);
}

/* Hover States - Disabled */

/* Active State - Clean Glow */
.global-footer .footer-nav-button.active {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.12) 0%,
			rgba(59, 130, 246, 0.05) 100%);
	border: 1px solid rgba(59, 130, 246, 0.2);
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	position: relative;
	box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
}

.global-footer .footer-nav-button.active::before {
	opacity: 1;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.15) 0%,
			transparent 70%);
}

/* Footer-Style Animations - Ultra Smooth */
.global-footer .footer-nav-button.active span:first-child {
	color: rgba(100, 180, 255, 1);
	position: relative;
	z-index: 1;

	/* Footer Animation Model - Offset Timing */
	/* animation:
		footerIconGlow var(--footer-glow-duration) ease-in-out infinite -4s,
		footerIconScale var(--footer-scale-duration) ease-in-out infinite; */

	/* Цветни активни иконки - премахваме grayscale за пълен цвят */
	filter:
		brightness(1.15) drop-shadow(0 0 8px rgba(59, 130, 246, 0.6)) drop-shadow(0 0 15px rgba(59, 130, 246, 0.3)) drop-shadow(0 1px 4px rgba(59, 130, 246, 0.4));
	-webkit-filter:
		brightness(1.15) drop-shadow(0 0 8px rgba(59, 130, 246, 0.6)) drop-shadow(0 0 15px rgba(59, 130, 246, 0.3)) drop-shadow(0 1px 4px rgba(59, 130, 246, 0.4));
}

.global-footer .footer-nav-button.active .nav-label {
	color: rgba(100, 180, 255, 1);
	opacity: 1;
	font-weight: 600;
	text-shadow: 0 0 8px rgba(59, 130, 246, 0.4);
}

/* User Avatar */
.global-footer .footer-nav-button .user-avatar {
	width: calc(var(--footer-icon-size) + 4px);
	height: calc(var(--footer-icon-size) + 4px);
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	transition: var(--footer-transition);
	border: none;
}

.global-footer .footer-nav-button .user-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	margin-bottom: 3px;
}

.global-footer .footer-nav-button.active .user-avatar {
	border: none;
	box-shadow: 0 0 12px rgba(var(--footer-accent-rgba), 0.5);
}

/* Notification Badges */
.global-footer .footer-nav-button[data-action="notifications"] span:first-child::after,
.global-footer .footer-nav-button[data-action="messages"] span:first-child::after {
	top: -2px;
	right: -3px;
	min-width: 10px;
	height: 10px;
	font-size: 6px;
	border-radius: 5px;
}

/* Footer Animation Keyframes */
@keyframes footerSlideUp {

	0%,
	30% {
		opacity: 0;
		transform: translate3d(0, 8px, 0);
		-webkit-transform: translate3d(0, 8px, 0);
	}

	50% {
		opacity: 0.5;
		transform: translate3d(0, 4px, 0);
		-webkit-transform: translate3d(0, 4px, 0);
	}

	100% {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		-webkit-transform: translate3d(0, 0, 0);
	}
}

@keyframes footerParticleFloat {

	0%,
	30% {
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
		background: transparent;
	}

	50% {
		box-shadow:
			-18px 0px 4px rgba(139, 92, 246, 0.15),
			-9px -1px 4px rgba(159, 122, 255, 0.12),
			0px -2px 4px rgba(179, 152, 255, 0.1),
			9px -1px 4px rgba(199, 182, 255, 0.08),
			18px 0px 4px rgba(219, 212, 255, 0.06);
		background:
			radial-gradient(circle at 20% 70%, rgba(139, 92, 246, 0.08) 1px, transparent 2px),
			radial-gradient(circle at 40% 55%, rgba(159, 122, 255, 0.06) 1px, transparent 2px),
			radial-gradient(circle at 60% 40%, rgba(179, 152, 255, 0.05) 1px, transparent 2px),
			radial-gradient(circle at 80% 25%, rgba(199, 182, 255, 0.04) 1px, transparent 2px);
	}

	100% {
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
		background: transparent;
	}
}

@keyframes footerIconGlow {

	0%,
	30% {
		filter:
			drop-shadow(0 0 8px rgba(var(--footer-accent-rgba), 0.6)) drop-shadow(0 0 16px rgba(var(--footer-accent-rgba), 0.2)) drop-shadow(0 1px 4px rgba(var(--footer-accent-rgba), 0.4));
		-webkit-filter:
			drop-shadow(0 0 8px rgba(var(--footer-accent-rgba), 0.6)) drop-shadow(0 0 16px rgba(var(--footer-accent-rgba), 0.2)) drop-shadow(0 1px 4px rgba(var(--footer-accent-rgba), 0.4));
	}

	50% {
		filter:
			drop-shadow(0 0 18px rgba(var(--footer-accent-rgba), 0.9)) drop-shadow(0 0 30px rgba(var(--footer-accent-rgba), 0.5)) drop-shadow(0 4px 10px rgba(var(--footer-accent-rgba), 0.7));
		-webkit-filter:
			drop-shadow(0 0 18px rgba(var(--footer-accent-rgba), 0.9)) drop-shadow(0 0 30px rgba(var(--footer-accent-rgba), 0.5)) drop-shadow(0 4px 10px rgba(var(--footer-accent-rgba), 0.7));
	}

	100% {
		filter:
			drop-shadow(0 0 8px rgba(var(--footer-accent-rgba), 0.6)) drop-shadow(0 0 16px rgba(var(--footer-accent-rgba), 0.2)) drop-shadow(0 1px 4px rgba(var(--footer-accent-rgba), 0.4));
		-webkit-filter:
			drop-shadow(0 0 8px rgba(var(--footer-accent-rgba), 0.6)) drop-shadow(0 0 16px rgba(var(--footer-accent-rgba), 0.2)) drop-shadow(0 1px 4px rgba(var(--footer-accent-rgba), 0.4));
	}
}

@keyframes footerIconScale {

	0%,
	30% {
		transform: translate3d(0, 0, 0) scale(1.05);
		-webkit-transform: translate3d(0, 0, 0) scale(1.05);
	}

	50% {
		transform: translate3d(0, 0, 0) scale(1.12);
		-webkit-transform: translate3d(0, 0, 0) scale(1.12);
	}

	100% {
		transform: translate3d(0, 0, 0) scale(1.05);
		-webkit-transform: translate3d(0, 0, 0) scale(1.05);
	}
}

/* Footer Responsive Breakpoints */
@media (max-width: 375px) {
	:root {
		--footer-height: 56px;
		--footer-button-height: 48px;
		--footer-icon-size: 12px;
		--footer-text-size: 6px;
	}
}

@media (min-width: 768px) {
	:root {
		--footer-height: 64px;
		--footer-button-height: 56px;
		--footer-icon-size: 16px;
		--footer-text-size: 8px;
	}
}

@media (orientation: landscape) and (max-height: 600px) {
	:root {
		--footer-height: 52px;
		--footer-button-height: 44px;
	}
}



/* ==================== CENTRALIZED INPUTS STYLES ==================== */
/* Интегрирани стилове от inputs.css за централизиран контрол */

button {
	letter-spacing: 0.5px;
}

/* Base Input Styles */
input,
textarea {
	width: 100%;
	padding: 8px 12px;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 8px;

	color: var(--text-primary);
	font-size: 12px;
	letter-spacing: 0.3px;
	transition: all 0.3s ease;
	border-radius: 8px;
	cursor: pointer;
}

/* Focus и Hover State */
input:focus,
textarea:focus {
	box-shadow:
		0 0 0 4px rgba(59, 130, 246, 0.1),
		0 0 20px rgba(59, 130, 246, 0.1);
	outline: none;
	border-color: var(--accent-blue);
	background: rgba(59, 130, 246, 0.15);
	position: relative;
	z-index: 1;
}

/* Премахваме hover ефекта когато елементът не е на фокус */
input:not(:focus):hover,
textarea:not(:focus):hover {
	box-shadow: none;
	border-color: rgba(59, 130, 246, 0.2);
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1) 0%,
			rgba(18, 20, 28, 0.98) 100%);
}

/* Input Wrapper Hover */
.input-wrapper:hover input:not(:focus),
.input-wrapper:hover textarea:not(:focus) {
	box-shadow: none;
	border-color: rgba(59, 130, 246, 0.2);
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1) 0%,
			rgba(18, 20, 28, 0.98) 100%);
}

/* Автоматично премахване на hover ефекта при преминаване към следващо поле */
.input-wrapper input:not(:focus),
.input-wrapper textarea:not(:focus) {
	transition: all 0.3s ease;
}

.input-wrapper input:focus+input:not(:focus),
.input-wrapper textarea:focus+textarea:not(:focus) {
	box-shadow: none;
	border-color: rgba(59, 130, 246, 0.2);
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1) 0%,
			rgba(18, 20, 28, 0.98) 100%);
}

/* Radio Inputs */
input[type="radio"] {
	display: none;
}

/* Labels */
label {
	display: block;
	margin-bottom: 8px;
	color: var(--text-secondary);
	font-size: 12px;
	font-weight: 500;
}

/* Input Groups */
.input-group {
	margin-bottom: 20px;
}

/* Range Inputs */
input[type="range"] {
	-webkit-appearance: none;
	width: 100%;
	height: 4px;
	background: rgba(59, 130, 246, 0.2);
	border-radius: 2px;
	outline: none;
}

input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 16px;
	height: 16px;
	background: var(--accent-blue);
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.2s ease;
}

/* Readonly State */
input[readonly] {
	cursor: pointer;
}

/* Disabled State */
input:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

input[type="radio"]:checked+.gender-checkbox {
	background: var(--accent-blue);
	border-color: var(--accent-blue);
}

input[type="radio"]:checked+.gender-checkbox::after {
	content: '✓';
	color: white;
	font-size: 12px;
}

/* Custom Radio & Checkbox Container */
fieldset {
	display: flex;
	gap: 16px;
	border: none;
	padding: 0;
	margin: 0;
}

fieldset[data-layout="vertical"] {
	flex-direction: column;
}

/* Label Wrapper */
label:has(input[type="checkbox"]),
label:has(input[type="radio"]) {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	margin: 0;
	font-size: 14px;
	/* color: var(--text-primary); */
}

/* Hide default inputs */
input[type="checkbox"],
input[type="radio"] {
	display: none;
}

/* Custom checkbox/radio style using pseudo-element */
input[type="checkbox"]+span,
input[type="radio"]+span {
	width: 20px;
	height: 20px;
	border: 1px solid rgba(59, 130, 246, 0.3);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
}

input[type="checkbox"]+span {
	border-radius: 6px;
}

input[type="radio"]+span {
	border-radius: 6px;
}

/* Checked states */
input[type="checkbox"]:checked+span,
input[type="radio"]:checked+span {
	background: var(--accent-blue);
	border-color: var(--accent-blue);
}

input[type="checkbox"]:checked+span::after,
input[type="radio"]:checked+span::after {
	content: '✓';
	color: white;
	font-size: 12px;
}

/* Submit Button */
.submit-button {
	width: 100%;
	padding: 12px;
	background: linear-gradient(90deg,
			var(--accent-blue) 0%,
			rgba(59, 130, 246, 0.8) 100%);
	border: none;
	border-radius: 8px;
	color: white;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

/* Специален стил за чат бутона */
.submit-button.chat-submit {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.9) 0%,
			rgba(59, 130, 246, 0.8) 100%);
	padding: 8px 16px;
	font-size: 13px;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
	position: relative;
	overflow: hidden;
}

.submit-button.chat-submit::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg,
			rgba(255, 255, 255, 0.1) 0%,
			transparent 100%);
	opacity: 1;
}

.submit-button.chat-submit span {
	position: relative;
	z-index: 1;
}

.submit-button.chat-submit span:first-child {
	font-size: 15px;
	transition: transform 0.3s ease;
}

.submit-button.chat-submit:hover {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 1) 0%,
			rgba(59, 130, 246, 0.9) 100%);
	transform: translateY(-1px);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.submit-button.chat-submit:hover span:first-child {
	transform: translateX(2px);
}

.submit-button.chat-submit:active {
	transform: translateY(1px);
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.85) 0%,
			rgba(59, 130, 246, 0.75) 100%);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.submit-button.chat-submit:active span:first-child {
	transform: translateX(0);
}

/* Добавяме стилове за бутоните на заявките */
.activity-buttons {
	display: flex;
	gap: 8px;
	margin-top: 8px;
}

.accept-request,
.decline-request {
	padding: 4px 12px;
	border-radius: 4px;
	font-size: 11px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.accept-request {
	background: var(--accent-blue);
	color: white;
	border: none;
}

.accept-request:hover {
	background: var(--accent-blue-hover);
	transform: translateY(-1px);
}

.decline-request {
	background: transparent;
	color: var(--text-secondary);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.decline-request:hover {
	background: rgba(255, 255, 255, 0.05);
	transform: translateY(-1px);
}

/* Autocomplete Override Styles */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-text-fill-color: var(--text-primary) !important;
	-webkit-box-shadow: 0 0 0 1000px rgba(18, 20, 28, 0.98) inset !important;
	background: linear-gradient(90deg, rgba(59, 130, 246, 0.1) 0%, rgba(18, 20, 28, 0.98) 100%) !important;
	border: 1px solid rgba(59, 130, 246, 0.2) !important;
	border-radius: 8px !important;
	transition: background-color 5000s ease-in-out 0s !important;
}

/* Force proper text styling */
input:-webkit-autofill::first-line {
	font-size: 12px !important;
	letter-spacing: 0.3px !important;
}

/* Register Button */
.register-button {
	width: 100%;
	padding: 12px;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.4) 0%,
			rgba(59, 130, 246, 0.2) 100%);
	border: 1px solid rgba(59, 130, 246, 0.3);
	border-radius: 8px;
	color: white;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.register-button:hover {
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.5) 0%,
			rgba(59, 130, 246, 0.3) 100%);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}

.register-button:active {
	transform: translateY(0);
}

/* Resend Code Button */
button.resend-code {
	background: none;
	border: none;
	color: var(--text-secondary);
	font-size: 14px;
	padding: 8px 12px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	justify-content: center;
	margin-top: 12px;
}

button.resend-code:hover:not(.disabled) {
	color: var(--accent-blue);
	transform: translateX(4px);
}

button.resend-code.disabled {
	opacity: 0.6;
	cursor: not-allowed;
	pointer-events: none;
	color: var(--text-secondary);
}

button.resend-code.loading {
	opacity: 0.7;
	cursor: wait;
	pointer-events: none;
}

/* Запазваме иконката и при disabled състояние */
button.resend-code::before {
	content: '🔄';
	font-size: 16px;
	opacity: 0.8;
}

button.resend-code.loading::before {
	content: '⌛';
}

/* ==================== PREMIUM SEND BUTTON - ULTRA GRADIENT STYLE ==================== */
/* Send Button Styling - Gradient Style with Ultra Effects */
.chat-input .submit-button.premium-send,
.chat-input .send-button.premium-send {
	padding: 8px 14px;
	height: 34px;
	font-size: 10px;
	border-radius: 12px;
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.3) 0%, rgba(79, 70, 229, 0.25) 100%);
	border: 1px solid rgba(99, 102, 241, 0.4);
	color: var(--text-primary);
	display: flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	transition: all 0.3s ease;
}

.chat-input .submit-button.premium-send .send-text,
.chat-input .send-button.premium-send .send-text {
	font-size: 9px;
	font-weight: 500;
}

.chat-input .submit-button.premium-send .send-icon,
.chat-input .send-button.premium-send .send-icon {
	font-size: 10px;
}

.chat-input .submit-button.premium-send:hover,
.chat-input .send-button.premium-send:hover {
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.4) 0%, rgba(79, 70, 229, 0.35) 100%);
	border-color: rgba(99, 102, 241, 0.6);
	box-shadow:
		0 2px 8px rgba(59, 130, 246, 0.25),
		0 0 16px rgba(59, 130, 246, 0.12),
		inset 0 1px 2px rgba(255, 255, 255, 0.1);
	transform: translateY(-1px);
	-webkit-transform: translate3d(0, -1px, 0);
}



/* ==================== END CENTRALIZED INPUTS STYLES ==================== */

/* ==================== CENTRALIZED INBOX STYLES ==================== */
/* Интегрирани стилове от inbox.css за централизиран контрол */

/* Стилове за категории бар */
.chat-categories {
	display: flex;
	gap: 2px;
	padding: 8px;
	background: var(--bg-secondary);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	opacity: 1;
	max-height: 48px;
	/* Височина на категориите + padding */
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	grid-area: categories;
	flex-shrink: 0;
	min-height: 0;
}

.chat-categories[style*="display: none"] {
	opacity: 0;
	max-height: 0;
	min-height: 0;
	height: 0;
	padding: 0;
	margin: 0;
	border: none;
	animation: slideUpFade 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes slideUpFade {
	from {
		opacity: 1;
		max-height: 48px;
		padding: 8px;
	}

	to {
		opacity: 0;
		max-height: 0;
		padding: 0;
	}
}

/*
.chat-categories .category-button {
	flex: 1;
	font-size: 11px;
	padding: 6px 12px;
	min-height: 32px;
}
*/
/* Стилове за празно състояние */
.end-of-content-indicator,
.premium-blocked-indicator,
.empty-state {
	padding: 24px 16px;
	text-align: center;
	color: var(--text-secondary);
	font-size: 13px;
	border: 1px dashed rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	margin: 16px 16px 36px 16px;
	background: rgba(0, 0, 0, 0.2);
}

/* Стилове за празен чат */
.activity-main.empty {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--bg-primary);
	min-height: 100%;
	padding: 20px;
	animation: fadeIn 0.3s ease-out;
}

.empty-chat-illustration {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 100%;
	text-align: center;
	opacity: 0.7;
	transform: scale(0.9);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin-top: -63px;
	animation: floatAnimation 3s ease-in-out infinite;
}

.empty-chat-illustration img {
	animation: pulseScale 2s ease-in-out infinite;
	transition: transform 0.3s ease;
	width: 90%;
}

.empty-chat-illustration:hover {
	opacity: 1;
	transform: scale(1);
}

.empty-chat-illustration:hover img {
	transform: scale(1.05);
}

.empty-chat-text {
	margin-top: 16px;
	color: var(--text-secondary);
	font-size: 13px;
	text-align: center;
	animation: slideUp 0.5s ease-out forwards;
	opacity: 0;
	transform: translateY(10px);
}

/* Error state specific styles */
/*
.empty-chat-illustration[data-state="error"] {
	animation: slideUp 0.4s ease-out;
}
*/
.empty-chat-illustration[data-state="error"] img {
	filter: drop-shadow(0 4px 8px rgba(239, 68, 68, 0.2));
}

.empty-chat-illustration[data-state="error"] .register-button {
	transition: all 0.3s ease;
	margin-top: 1.5rem;
	background: linear-gradient(135deg, #EF4444, #DC2626);
	border: none;
	box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

.empty-chat-illustration[data-state="error"] .register-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(239, 68, 68, 0.4);
	background: linear-gradient(135deg, #DC2626, #B91C1C);
}

.empty-chat-illustration[data-state="error"] .register-button:active {
	transform: translateY(0);
	box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3);
}

/* Network error specific styles */
.empty-chat-illustration[data-error-type="network"] img {
	filter: drop-shadow(0 4px 8px rgba(245, 158, 11, 0.2));
}

.empty-chat-illustration[data-error-type="network"] .register-button {
	background: linear-gradient(135deg, #F59E0B, #D97706);
	box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

.empty-chat-illustration[data-error-type="network"] .register-button:hover {
	background: linear-gradient(135deg, #D97706, #B45309);
	box-shadow: 0 6px 16px rgba(245, 158, 11, 0.4);
}

/* Server error specific styles */
.empty-chat-illustration[data-error-type="server"] .register-button {
	background: linear-gradient(135deg, #EF4444, #DC2626);
	box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
}

/* Timeout error specific styles */
.empty-chat-illustration[data-error-type="timeout"] .register-button {
	background: linear-gradient(135deg, #8B5CF6, #7C3AED);
	box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3);
}

.empty-chat-illustration[data-error-type="timeout"] .register-button:hover {
	background: linear-gradient(135deg, #7C3AED, #6D28D9);
	box-shadow: 0 6px 16px rgba(139, 92, 246, 0.4);
}

/* Нови анимации за inbox */
@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes floatAnimation {

	0%,
	100% {
		transform: translateY(0) scale(0.9);
	}

	50% {
		transform: translateY(-10px) scale(0.9);
	}
}

@keyframes pulseScale {

	0%,
	100% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.02);
	}
}

@keyframes slideUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Dropdown меню */
.dropdown-wrapper {
	position: relative;
}

.dropdown-menu {
	position: absolute;
	top: 100%;
	right: 0;
	min-width: 200px;
	background: var(--bg-secondary);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	padding: 4px;
	margin-top: 4px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	display: none;
	z-index: 100;
}

.dropdown-wrapper:hover .dropdown-menu {
	display: block;
}

.dropdown-item {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	padding: 8px 12px;
	border: none;
	background: transparent;
	color: var(--text-primary);
	font-size: 13px;
	text-align: left;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.dropdown-item:hover {
	background: rgba(59, 130, 246, 0.1);
}

.dropdown-item.danger {
	color: #ef4444;
}

.dropdown-item.danger:hover {
	background: rgba(239, 68, 68, 0.1);
}

.dropdown-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.1);
	margin: 4px 0;
}

.dropdown-item .icon {
	font-size: 16px;
	opacity: 0.7;
}

.typing-indicator {
	padding: 8px 12px;
	background: rgba(59, 130, 246, 0.1);
	border-radius: 16px;
	margin: 4px 0;
	display: inline-flex;
	align-items: center;
	gap: 2px;
}

.typing-indicator span {
	width: 4px;
	height: 4px;
	background: var(--accent-blue);
	border-radius: 50%;
	display: inline-block;
	animation: typing 1s infinite;
}

.typing-indicator span:nth-child(2) {
	animation-delay: 0.2s;
}

.typing-indicator span:nth-child(3) {
	animation-delay: 0.4s;
}

@keyframes typing {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-4px);
	}
}

/* ==================== END CENTRALIZED INBOX STYLES ==================== */

/* ==================== FOOTER OVERLAP PROTECTION ==================== */
/* Универсална защита срещу застъпване с footer-а */

.footer-safe-bottom {
	padding-bottom: calc(var(--footer-height) + var(--footer-safe-area) + 8px) !important;
	box-sizing: border-box !important;
}

.main-content-container,
.scrollable-content {
	padding-bottom: calc(var(--footer-height) + var(--footer-safe-area) + 8px);
	box-sizing: border-box;
}

/* Специална защита за fixed positioned елементи */
.fixed-bottom-element {
	bottom: calc(var(--footer-height) + var(--footer-safe-area) + 8px) !important;
}

/* Защита от chat-input overlap */
.chat-input-safe-bottom {
	padding-bottom: calc(var(--footer-height) + var(--footer-safe-area) + var(--chat-input-height) + 8px) !important;
	box-sizing: border-box !important;
}

/* ==================== END FOOTER OVERLAP PROTECTION ==================== */

/* ==================== CENTRALIZED POPUP STYLES ==================== */
/* Интегрирани стилове от popup.css за централизиран контрол */

/* Message Popup Container */
.message-popup {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.75);
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 10vh;
	padding-bottom: 10vh;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	z-index: 99999;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

.message-popup.show {
	opacity: 1 !important;
	visibility: visible !important;
}

/* Popup винаги е в body с максимален z-index */
.message-popup {
	z-index: 999999 !important;
}

/* Popup Content */
.message-popup-content {
	background: var(--bg-secondary);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 16px;
	width: 90%;
	max-width: 420px;
	max-height: 75vh;
	transform: translateY(20px) scale(0.95);
	opacity: 0;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.message-popup.show .message-popup-content {
	transform: translateY(0) scale(1) !important;
	opacity: 1 !important;
}

/* Popup Header */
.popup-header {
	padding: 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: linear-gradient(90deg,
			var(--bg-secondary) 0%,
			rgba(18, 20, 28, 0.98) 100%);
}

.popup-header h3 {
	font-size: 16px;
	font-weight: 500;
	color: var(--text-primary);
	margin: 0;
}

/* Close Button */
.popup-close {
	width: 28px;
	height: 28px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 50%;
	color: var(--text-secondary);
	font-size: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
}

.popup-close:hover {
	background: rgba(59, 130, 246, 0.2);
	transform: rotate(90deg) scale(1.1);
	color: var(--accent-blue);
}

/* Popup Body */
.popup-body {
	padding: 16px;
}

.popup-body .message-input {
	width: 100%;
	min-height: 100px;
	max-height: 200px;
	padding: 12px;
	background: rgba(59, 130, 246, 0.05);
	border: 1px solid rgba(59, 130, 246, 0.1);
	border-radius: 12px;
	color: var(--text-primary);
	font-size: 14px;
	resize: vertical;
	transition: all 0.3s ease;
	box-sizing: border-box;
}

.message-input:focus {
	outline: none;
	border-color: rgba(59, 130, 246, 0.3);
	background: rgba(59, 130, 246, 0.1);
}

.message-input::placeholder {
	color: var(--text-secondary);
}

/* Popup Footer */
.popup-footer {
	padding: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	display: flex;
	justify-content: flex-end;
	background: linear-gradient(90deg,
			rgba(18, 20, 28, 0.98) 0%,
			var(--bg-secondary) 100%);
}

/* Send Button */
.send-message-btn {
	padding: 8px 16px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 8px;
	width: auto;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex !important;
	align-items: center !important;
	gap: 12px;
	min-height: 44px !important;
}

.send-message-btn .button-content {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 100%;
}

.send-message-btn .button-content span {
	font-size: 14px;
	color: var(--text-primary);
}

.send-message-btn .button-content span:first-child {
	font-size: 16px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 20px !important;
	line-height: 1 !important;
	height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: middle !important;
	text-align: center !important;
	flex-shrink: 0 !important;
	position: relative !important;
}

.send-message-btn:hover {
	background: rgba(59, 130, 246, 0.2);
	transform: translateY(-2px);
}

.send-message-btn:active {
	transform: translateY(0);
}

.send-message-btn:disabled {
	opacity: 0.6 !important;
	cursor: not-allowed;
	pointer-events: none;
	transform: none !important;
}

.send-message-btn:disabled:hover {
	transform: none !important;
	background: rgba(59, 130, 246, 0.1) !important;
}

/* Dark Theme Variations */
[data-theme="dark"] .message-popup-content {
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .message-input {
	background: rgba(0, 0, 0, 0.2);
}

/* Light Theme Variations */
[data-theme="light"] .message-popup-content {
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
}

[data-theme="light"] .message-input {
	background: rgba(255, 255, 255, 0.05);
}

/* Mobile Optimized - Simple & Universal */
@media (max-width: 480px) {
	.message-popup-content {
		width: 95%;
	}

	.popup-header h3 {
		font-size: 14px;
	}

	.popup-body .message-input {
		font-size: 14px;
		min-height: 80px;
	}

	.send-message-btn {
		font-size: 14px;
	}
}

/* ==================== END CENTRALIZED POPUP STYLES ==================== */

/* ==================== CENTRALIZED SEARCH POPUP STYLES ==================== */
/* Интегрирани стилове от search-popup.css за централизиран контрол */

/* Search Popup Container */
.search-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	backdrop-filter: blur(8px);
	z-index: 99999;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding-top: 10vh;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.search-popup.show {
	opacity: 1;
	visibility: visible;
}

.search-popup-content {
	background: var(--bg-primary);
	border-radius: 16px;
	width: 90%;
	max-width: 400px;
	padding: 24px;
	position: relative;
	transform: translateY(-20px);
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-height: 75vh;
}

.search-popup-content::before {
	content: "🔍";
	position: absolute;
	left: 38px;
	top: 35px;
	font-size: 14px;
	opacity: 0.7;
	z-index: 1;
	pointer-events: none;
}

.search-popup-content.no-before-icon::before {
	content: none;
	/* Премахва иконата */
}

.search-popup-content .activity-header {
	height: 45px
}

.search-popup-content .activity-title {
	font-size: 12px;
}


.search-popup-content .activity-title span {
	font-size: 14px;
}

/* Close button positioning в search popup */
.search-popup-content .close-button {
	position: absolute;
	top: 16px;
	right: 16px;
	margin: 0;
}

/* Подобрен search input */
.search-input {
	width: 100%;
	padding: 14px 18px 14px 40px;
	background: linear-gradient(90deg,
			rgba(59, 130, 246, 0.1) 0%,
			rgba(18, 20, 28, 0.98) 100%);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 12px;
	color: var(--text-primary);
	font-size: 13px;
	letter-spacing: 0.3px;
	transition: all 0.3s ease;
	margin-top: 0;
	/* Премахваме горния марджин */
}

.search-input:focus {
	border-color: rgba(59, 130, 246, 0.4);
	box-shadow:
		0 0 0 4px rgba(59, 130, 246, 0.1),
		0 0 20px rgba(59, 130, 246, 0.1);
}

/* Подобрен search results контейнер */
.search-results {
	overflow-y: auto;
	max-height: calc(80vh - 140px);
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 4px;
	margin-top: 8px;
}

/* Добавяме плавен scroll индикатор */
.search-results::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background: linear-gradient(to top,
			var(--bg-primary),
			transparent);
	pointer-events: none;
	opacity: 0;
}

.search-results:hover::after {
	opacity: 1;
}

/* Стилове за search result item */
.search-result-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px;
	border-radius: 8px;
	background: rgba(59, 130, 246, 0.05);
	cursor: pointer;
}

.search-result-item:hover {
	background: rgba(59, 130, 246, 0.1);
	transform: translateX(4px);
}


.user-avatar {
	position: relative;
	width: 40px;
	height: 40px;
}

.user-avatar img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
}

.user-info {
	flex: 1;
}

.user-name {
	font-weight: 500;
	color: var(--text-primary);
}

.user-username {
	font-size: 12px;
	color: var(--text-secondary);
}


.search-popup .user-status {
	font-size: 11px;
	padding: 4px 8px;
	border-radius: 12px;
}

.search-popup .user-status.online {
	background: rgba(68, 183, 0, 0.1);
	color: #44b700;
}

.search-popup .user-status.offline {
	background: rgba(189, 189, 189, 0.1);
	color: #bdbdbd;
}

/* Стилове за съобщение "Не са намерени потребители" */
.no-results {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 30px 0;
	text-align: center;
	background: rgba(255, 59, 59, 0.05);
	border-radius: 10px;
	border: 1px dashed rgba(255, 59, 59, 0.2);
	margin: 10px 0;
}

.no-results span {
	font-size: 40px;
	margin-bottom: 16px;
	animation: pulsate 2s ease-in-out infinite;
}

.no-results p {
	color: var(--text-secondary);
	font-size: 14px;
	font-weight: 500;
	opacity: 0.8;
}

/* Loading State */
.loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 30px 0;
	text-align: center;
	background: rgba(59, 130, 246, 0.05);
	border-radius: 10px;
	margin: 10px 0;
}

.loading .spinner {
	width: 36px;
	height: 36px;
	border: 3px solid rgba(59, 130, 246, 0.1);
	border-radius: 50%;
	border-top-color: rgba(59, 130, 246, 0.8);
	animation: spin 1s linear infinite;
	margin-bottom: 16px;
}

.loading p {
	color: var(--text-secondary);
	font-size: 14px;
	font-weight: 500;
}

/* Search Animations */
@keyframes pulsate {

	0%,
	100% {
		opacity: 0.8;
		transform: scale(1);
	}

	50% {
		opacity: 1;
		transform: scale(1.05);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

@keyframes shake {

	0%,
	100% {
		transform: translateX(0);
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		transform: translateX(-5px);
	}

	20%,
	40%,
	60%,
	80% {
		transform: translateX(5px);
	}
}

/* ==================== SEARCH POPUP RESPONSIVE POSITIONING ==================== */

/* За малки екрани - по-близо до горния край */
@media (max-height: 600px) {
	.search-popup {
		padding-top: 5vh;
	}

	.search-popup-content {
		max-height: 65vh;
	}
}

/* За много малки екрани - почти до горния край */
@media (max-height: 480px) {
	.search-popup {
		padding-top: 20px;
	}

	.search-popup-content {
		max-height: 70vh;
		border-radius: 12px;
		padding: 20px;
	}
}

/* За landscape ориентация - по-малко горно разстояние */
@media (orientation: landscape) and (max-height: 500px) {
	.search-popup {
		padding-top: 20px;
	}

	.search-popup-content {
		max-height: 80vh;
	}
}

/* За много високи екрани - повече горно разстояние */
@media (min-height: 900px) {
	.search-popup {
		padding-top: 15vh;
	}
}

/* За десктоп/таблет - оптимизирано позициониране */
@media (min-width: 768px) {
	.search-popup {
		padding-top: 12vh;
	}

	.search-popup-content {
		max-width: 450px;
		max-height: 70vh;
	}
}

/* ==================== END CENTRALIZED SEARCH POPUP STYLES ==================== */
/* ==================== END CENTRALIZED MESSAGES STYLES ==================== */



/* ==================== MAIN CONTAINER RIBBON ANIMATIONS - FOOTER MODEL ==================== */

/* Main Container Falling Ribbon Flow Animation - Ultra Delicate */
@keyframes mainContainerRibbonFlow {

	0%,
	35% {
		transform: translate3d(0, -70%, 0) scaleY(0.8);
		-webkit-transform: translate3d(0, -70%, 0) scaleY(0.8);
		opacity: 0;
	}

	50% {
		transform: translate3d(0, 0%, 0) scaleY(1);
		-webkit-transform: translate3d(0, 0%, 0) scaleY(1);
		opacity: 0.4;
		/* Delicate как footer */
	}

	65%,
	100% {
		transform: translate3d(0, 70%, 0) scaleY(0.8);
		-webkit-transform: translate3d(0, 70%, 0) scaleY(0.8);
		opacity: 0;
	}
}

/* Main Container Ribbon Glow Animation - Ultra Delicate */
@keyframes mainContainerRibbonGlow {

	0%,
	40% {
		box-shadow:
			-1px 0 3px rgba(var(--footer-accent-rgba), 0.08),
			-2px 0 6px rgba(var(--footer-accent-rgba), 0.04);
	}

	60%,
	100% {
		box-shadow:
			-1px 0 5px rgba(var(--footer-accent-rgba), 0.12),
			-2px 0 8px rgba(var(--footer-accent-rgba), 0.06);
	}
}


/* ==================== PROFILE VIEW FOOTER SPACING ==================== */

/* Profile View Container - Предвиждане за Global Footer */
.profile-view {
	/* Предвиждане на footer височина */
	padding-bottom: var(--footer-height) !important;

	/* Гарантирано scroll пространство */
	min-height: calc(100vh - var(--footer-height)) !important;

	/* Плавно scroll поведение */
	scroll-behavior: auto !important;
	overflow-y: auto !important;

	/* Предотвратяване на застъпване */
	margin-bottom: 0 !important;
	box-sizing: border-box !important;
}

/* Допълнителна защита за profile sidebar и main */
.profile-sidebar,
.profile-main {
	/* Inherited от parent .profile-view */
	padding-bottom: var(--footer-height) !important;
	margin-bottom: 0 !important;
}

/* Мобилна адаптация за Profile View */
@media (max-width: 768px) {
	.profile-view {
		/* Samo footer height za mobile */
		padding-bottom: var(--footer-height) !important;
	}

	.profile-sidebar,
	.profile-main {
		padding-bottom: var(--footer-height) !important;
	}
}

/* Landscape ориентация оптимизация */
@media (orientation: landscape) and (max-height: 600px) {
	.profile-view {
		/* Samo footer height za landscape */
		padding-bottom: var(--footer-height) !important;
	}

	.profile-sidebar,
	.profile-main {
		padding-bottom: var(--footer-height) !important;
	}
}

/* ==================== END PROFILE VIEW FOOTER SPACING ==================== */

/* Webkit scrollbar */
::-webkit-scrollbar {
	scroll-behavior: auto !important;
}



/* ==================== CHAT COMPONENTS - СВЕТЛИННИ ЕФЕКТИ ==================== */

/* Chat Header - Намалени ефекти за емоджи/аватари */
.chat-user-info .user-avatar {
	filter: drop-shadow(0 0 4px rgba(59, 130, 246, 0.2));
	transform: scale(1.025);
	transition: transform 0.3s ease;
}

/* Message Avatar - Намалени ефекти */
.message-avatar {
	filter: drop-shadow(0 0 3px rgba(59, 130, 246, 0.15));
	transition: filter 0.3s ease;
}

.message-avatar img {
	border: 1px solid rgba(59, 130, 246, 0.2);
	box-shadow: 0 0 4px rgba(59, 130, 246, 0.15);
	transition: box-shadow 0.3s ease;
}






/* Received Messages - Намалени ефекти */
.message-wrapper .message {
	box-shadow: 0 1px 3px rgba(59, 130, 246, 0.03);
	border: 1px solid rgba(59, 130, 246, 0.025);
}

/* Message Time - Намалени ефекти */
.message-wrapper .message-time {
	filter: drop-shadow(0 0 2px rgba(59, 130, 246, 0.2));
	color: rgba(59, 130, 246, 0.7);
	transition: filter 0.3s ease;
}

/* Message Text - Намалени ефекти */
.message-wrapper .message-text {
	filter: drop-shadow(0 0 1px rgba(59, 130, 246, 0.075));
	transition: filter 0.3s ease;
}

/* ================================================================== */
/* 🔔 CHAT NOTIFICATION BUBBLES SYSTEM                               */
/* ================================================================== */

/* Container за всички chat notifications */
.chat-notification-container {
	position: fixed;
	top: 20px;
	right: 7px;
	z-index: 10000;
	pointer-events: none;
	max-width: 220px;
	width: 100%;
}

/* Base chat notification bubble стилове - Match sidebar category-button дизайн */
.chat-notification-bubble {
	position: relative;
	width: 100%;
	height: auto;
	padding: 6px 8px;
	margin-bottom: 6px;

	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;

	/* Твърд фон за по-добра видимост */
	background: linear-gradient(90deg,
			rgba(26, 29, 40, 0.92),
			rgba(35, 45, 65, 0.88));
	backdrop-filter: blur(8px);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-left: 2px solid var(--accent-blue, #3b82f6);
	border-radius: 4px;

	color: var(--text-primary, #f3f4f6);
	font-size: 9px;
	cursor: pointer;

	/* Copy sidebar box-shadow effects */
	box-shadow:
		0 1px 2px rgba(59, 130, 246, 0.1),
		0 2px 8px rgba(0, 0, 0, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.05);

	/* Entry/exit animations */
	pointer-events: all;
	transform: translateX(400px);
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	overflow: hidden;
}

/* Copy sidebar glow effects - GPU optimized */
.chat-notification-bubble::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(59, 130, 246, 0.08) 0%,
			transparent 70%);
	opacity: 0;
	transform: scale(0.5);
	-webkit-transform: scale(0.5);
	transition: all 0.3s ease;
	pointer-events: none;
	border-radius: 4px;
}

/* Notification show анимация */
.chat-notification-bubble.show {
	transform: translateX(0);
	opacity: 1;
}

/* Notification show state - activate glow */
.chat-notification-bubble.show::after {
	opacity: 1;
	transform: scale(1);
	-webkit-transform: scale(1);
}

/* Notification hide анимация */
.chat-notification-bubble.hide {
	transform: translateX(400px);
	opacity: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
	max-height: 0;
}

/* 📱 SWIPE TO DISMISS ANIMATIONS & INTERACTIONS */

/* Enable smooth swipe transitions */
.chat-notification-bubble {
	transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		opacity 0.3s ease-out,
		background 0.2s ease-out;
	will-change: transform;
	touch-action: pan-x;
	cursor: grab;
}

/* Active swipe state */
.chat-notification-bubble.swiping {
	transition: none;
	cursor: grabbing;
	z-index: 10001;
}

/* Swipe dismiss animation (right slide) */
.chat-notification-bubble.swipe-dismiss {
	transform: translateX(400px) scale(0.8);
	opacity: 0;
	transition: transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53),
		opacity 0.4s ease-out,
		scale 0.4s ease-out;
}

/* Visual feedback за active swipe */
.chat-notification-bubble.swipe-active {
	background: linear-gradient(90deg,
			rgba(239, 68, 68, 0.1),
			rgba(239, 68, 68, 0.2)) !important;
	border-left: 2px solid rgba(239, 68, 68, 0.6) !important;
	box-shadow: 0 4px 20px rgba(239, 68, 68, 0.2) !important;
}

/* Swipe indicator arrow */
.chat-notification-bubble.swipe-indicator::after {
	content: '→';
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 16px;
	color: rgba(239, 68, 68, 0.8);
	animation: swipeArrowPulse 0.6s ease-in-out infinite alternate;
	z-index: 5;
}

@keyframes swipeArrowPulse {
	from {
		opacity: 0.6;
		transform: translateY(-50%) translateX(0);
	}

	to {
		opacity: 1;
		transform: translateY(-50%) translateX(4px);
	}
}

/* Header на notification - match sidebar layout */
.chat-notification-header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 6px;
	width: 100%;
	position: relative;
	z-index: 2;
}

/* Avatar в notification - Match app design */
.chat-notification-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 2px solid var(--accent-blue, #3b82f6);
	object-fit: cover;
	background: var(--bg-secondary, #1a1d28);
	flex-shrink: 0;
}

/* Default avatar fallback */
.chat-notification-avatar.default,
.chat-notification-avatar[src*="default-avatar"] {
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(59, 130, 246, 0.3));
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 500;
	color: var(--accent-blue, #3b82f6);
}

/* Error state за липсващи avatars */
.chat-notification-avatar[src=""],
.chat-notification-avatar:not([src]) {
	background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(59, 130, 246, 0.3));
	border: 2px solid rgba(59, 130, 246, 0.5);
}

/* User info секция */
.chat-notification-user-info {
	flex: 1;
	min-width: 0;
}

/* Username стил - Match category дизайн */
.chat-notification-username {
	font-weight: 500;
	font-size: var(--category-font-size, 9px);
	margin: 0 0 2px 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: var(--accent-blue, #3b82f6);
	background: linear-gradient(90deg, var(--accent-blue, #3b82f6), #60a5fa);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/* 🚻 GENDER-BASED USERNAME STYLING - Uses global .male/.female classes */

/* Timestamp стил - Match category дизайн */
.chat-notification-timestamp {
	font-size: var(--category-font-size, 9px);
	color: var(--text-secondary, #9ca3af);
	margin: 0;
}

/* Message съдържание - Match category дизайн */
.chat-notification-message {
	font-size: var(--category-font-size, 9px);
	line-height: 1.4;
	margin: 4px 0 0 0;
	word-wrap: break-word;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: var(--text-primary, #f3f4f6);
	position: relative;
	z-index: 2;
}

/* Close бутон - Match category дизайн */
.chat-notification-close {
	position: absolute;
	top: 4px;
	right: 8px;
	background: rgba(59, 130, 246, 0.1);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-radius: 50%;
	color: var(--text-secondary, #9ca3af);
	width: 20px;
	height: 20px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	transition: all 0.2s ease;
	z-index: 3;
}

.chat-notification-close:hover {
	background: rgba(59, 130, 246, 0.2);
	color: var(--accent-blue, #3b82f6);
	transform: scale(1.1);
}

/* Hover effect на цялата notification - Copy exact sidebar hover */
.chat-notification-bubble:hover:not(.swiping):not(.swipe-active) {
	/* Enhanced твърд hover фон */
	background: linear-gradient(90deg,
			rgba(30, 35, 50, 0.95),
			rgba(40, 50, 70, 0.90));
	backdrop-filter: blur(10px);
	border: 1px solid rgba(59, 130, 246, 0.2);
	border-left: 2px solid var(--accent-blue, #3b82f6);

	/* Enhanced shadows like active sidebar buttons */
	box-shadow:
		0 1px 2px rgba(59, 130, 246, 0.1),
		0 2px 8px rgba(0, 0, 0, 0.15),
		0 4px 16px rgba(59, 130, 246, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.05);

	/* Subtle transform like sidebar */
	transform: translateX(-4px) translateZ(0);
}

/* Hover state - enhance glow */
.chat-notification-bubble:hover:not(.swiping):not(.swipe-active)::after {
	opacity: 1;
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
}

/* Channel notifications - използвай същия стил като base */
.chat-notification-bubble.channel {
	/* Използва същия стил като base - no override needed */
}

/* Direct message notifications - твърд фон за по-добра видимост */
.chat-notification-bubble.direct {
	background: linear-gradient(90deg, rgba(28, 32, 44, 0.93), rgba(38, 48, 68, 0.89));
	backdrop-filter: blur(8px);
	border-left: 2px solid rgba(59, 130, 246, 0.9);
}

.chat-notification-bubble.direct:hover {
	background: linear-gradient(90deg, rgba(32, 38, 52, 0.96), rgba(42, 52, 72, 0.92));
	backdrop-filter: blur(10px);
}

/* Pulse анимация за нови notifications - Match category glow */
@keyframes notificationPulse {
	0% {
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	}

	50% {
		box-shadow: 0 4px 16px rgba(59, 130, 246, 0.3);
	}

	100% {
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	}
}

.chat-notification-bubble.pulse {
	animation: notificationPulse 2s ease-in-out 3;
}

/* Progress bar за auto-hide - Match category accent */
.chat-notification-progress {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 2px;
	background: linear-gradient(90deg, var(--accent-blue, #3b82f6), transparent);
	border-radius: 0 0 4px 4px;
	transition: width linear;
}

/* Mobile responsive */
@media (max-width: 768px) {
	.notification-container {
		top: 10px;
		right: 10px;
		left: 10px;
		max-width: none;
	}

	.chat-notification-bubble {
		margin-bottom: 8px;
	}

	.chat-notification-message {
		-webkit-line-clamp: 2;
	}
}

/* Dark mode автоматично работи чрез CSS variables */

/* Звукова notification визуализация - Match category accent */
.chat-notification-bubble.sound-wave::before {
	content: '';
	position: absolute;
	top: -2px;
	right: -2px;
	width: 12px;
	height: 12px;
	background: var(--accent-blue, #3b82f6);
	border-radius: 50%;
	animation: soundWave 1s ease-out;
}

@keyframes soundWave {
	0% {
		transform: scale(0);
		opacity: 1;
	}

	100% {
		transform: scale(2);
		opacity: 0;
	}
}

/* ==================== HEADER ICON STYLES (LEGACY - UNUSED) ==================== */

/* Base Header Button Icon */
.header-button-icon {
	width: 11px !important;
	height: 11px !important;
	border: 1.5px solid currentColor;
	border-radius: 50%;
	position: relative;
	transition: all 0.3s ease;
}

/* Refresh Icon Specific */
.refresh-icon {
	border-top-color: transparent;
	color: #64b5f6;
}

.refresh-icon::before {
	content: '';
	position: absolute;
	top: -2px;
	right: -1px;
	width: 0;
	height: 0;
	border-left: 3px solid currentColor;
	border-top: 2px solid transparent;
	border-bottom: 2px solid transparent;
	transition: all 0.3s ease;
}

.close-button:hover .refresh-icon {
	color: #42a5f5;
	transform: rotate(180deg);
}

/* Search Icon Specific */
.search-icon {
	color: #81c784;
}

.search-icon::after {
	content: '';
	position: absolute;
	bottom: -4px;
	right: -4px;
	width: 5px;
	height: 1.5px;
	background: currentColor;
	transform: rotate(45deg);
	border-radius: 1px;
	transition: all 0.3s ease;
}

.close-button:hover .search-icon {
	color: #66bb6a;
	transform: scale(1.1);
}

/* ==================== NEW MESSAGES INDICATOR ==================== */
.new-messages-indicator {
	/* Position and z-index will be set via JavaScript */
	background: linear-gradient(135deg, #ff6b6b, #ff8e53);
	color: white;
	padding: 10px 16px;
	border-radius: 20px;
	box-shadow: 0 4px 20px rgba(255, 107, 107, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);
	cursor: pointer;
	font-size: 9px;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 6px;
	backdrop-filter: blur(10px);
	border: 2px solid rgba(255, 255, 255, 0.3);
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	/* Initial state - visible */
	opacity: 1;
	white-space: nowrap;
	max-width: 200px;
	animation: pulse 2s infinite;
	position: relative;
	overflow: hidden;
}

/* Pulse animation for attention - only affects shadow and brightness, not position */
@keyframes pulse {

	0%,
	100% {
		box-shadow: 0 4px 20px rgba(255, 107, 107, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);
		filter: brightness(1);
	}

	50% {
		box-shadow: 0 6px 25px rgba(255, 107, 107, 0.6), 0 4px 12px rgba(0, 0, 0, 0.3);
		filter: brightness(1.1);
	}
}

/* Shimmer effect */
.new-messages-indicator::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
	animation: shimmer 3s infinite;
	z-index: 1;
	pointer-events: none;
}

/* Ensure text and icon are above shimmer */
.new-messages-indicator .icon,
.new-messages-indicator span {
	position: relative;
	z-index: 2;
}

@keyframes shimmer {
	0% {
		left: -100%;
	}

	100% {
		left: 100%;
	}
}

.new-messages-indicator:hover {
	background: linear-gradient(135deg, #ff5252, #ff7043);
	transform: translateX(-50%) translateY(-4px) !important;
	box-shadow: 0 8px 30px rgba(255, 107, 107, 0.6), 0 4px 15px rgba(0, 0, 0, 0.3);
	animation: none;
	/* Stop pulse on hover */
}

.new-messages-indicator:active {
	transform: translateX(-50%) translateY(-1px) !important;
	box-shadow: 0 2px 10px rgba(255, 107, 107, 0.4), 0 1px 5px rgba(0, 0, 0, 0.2);
}

.new-messages-indicator .icon {
	width: 14px;
	height: 14px;
	background: currentColor;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 14l-7 7m0 0l-7-7m7 7V3'/%3E%3C/svg%3E") no-repeat center;
	mask-size: contain;
}

.new-messages-indicator .count {
	background: rgba(255, 255, 255, 0.2);
	padding: 2px 8px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 600;
	min-width: 20px;
	text-align: center;
}

/* ! app-interface2.css ! */
/**
 * @fileoverview Loading Indicators CSS - Централизирани стилове за loading системата
 * @version 2.0.0
 * @author Deyan Ivanov
 * @description Стилове за main-spinner, container-spinner и loading-container
 */

/* ==================== MAIN SPINNER (GLOBAL) ==================== */

/* Глобален индикатор за зареждане */
.main-spinner {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: transparent;
	z-index: 9999;
	pointer-events: none;

	/* Анимации и ускорение */
	transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
	-webkit-transform: scale3d(1, 1, 1);
	will-change: transform, opacity;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	contain: layout style paint;
}

.main-spinner-bar {
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, #4285f4 0%, #34a853 25%, #fbbc05 50%, #ea4335 75%, #4285f4 100%);
	background-size: 400% 100%;
	animation: main-spinner-progress 2s linear infinite;
}

/* Hiding state - когато JS скрива spinner-а */
.main-spinner.hiding {
	opacity: 0;
	transform: translate3d(0, -3px, 0);
	pointer-events: none;
	transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}

/* ==================== ANIMATIONS ==================== */

@keyframes main-spinner-progress {
	0% {
		background-position: 100% 0;
	}

	100% {
		background-position: 0 0;
	}
}

@keyframes container-spinner-rotate {
	to {
		transform: rotate(360deg);
	}
}

/* ==================== SEARCH ACTIVITY STYLES ==================== */

.activity-view.search-activity.slide-layout {
	background: var(--bg-primary);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	flex-direction: column;
	z-index: 1000;
}

.activity-view.search-activity.slide-layout .activity-container {
	flex: 1;
	overflow: hidden;
	display: grid;
	grid-template-columns: 1fr;
	height: 100%;
}

.activity-view.search-activity.slide-layout .activity-header {
	background: linear-gradient(90deg, var(--bg-secondary) 0%, rgba(18, 20, 28, 0.98) 100%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	position: relative;
	padding: 16px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 72px;
}

.activity-view.search-activity.slide-layout .activity-header::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center,
			rgba(43, 82, 120, 0.15) 0%,
			rgba(43, 82, 120, 0.1) 30%,
			rgba(43, 82, 120, 0.05) 60%,
			transparent 80%);
	z-index: 0;
	pointer-events: none;
}

.activity-view.search-activity.slide-layout .activity-header::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg,
			transparent,
			rgba(43, 82, 120, 0.5),
			transparent);
	animation: gradientMove 3s linear infinite;
	z-index: 1;
}

.activity-view.search-activity.slide-layout .activity-title {
	display: flex;
	align-items: center;
	gap: 16px;
	position: relative;
	z-index: 2;
}

.activity-view.search-activity.slide-layout .activity-title span {
	font-size: 24px;
	filter: drop-shadow(0 2px 4px rgba(255, 215, 0, 0.2));
}

.activity-view.search-activity.slide-layout .activity-main {
	height: 100%;
	flex: 1;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: var(--bg-primary);
}

.activity-view.search-activity.slide-layout .search-results-content {
	flex: 1;
	overflow-y: auto;
	padding: 16px;
}

.activity-view.search-activity.slide-layout .search-results-grid {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 12px;
	background: var(--bg-primary);
}

.activity-view.search-activity.slide-layout .search-results-grid.grid-view {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 28px;
}

.activity-view.search-activity.slide-layout .search-results-grid .col.card:first-child {
	margin-top: 81px;
}

@media (min-width: 768px) {
	.activity-view.search-activity.slide-layout .search-results-grid.grid-view {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	.activity-view.search-activity.slide-layout .search-results-grid.grid-view {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width: 1440px) {
	.activity-view.search-activity.slide-layout .search-results-grid.grid-view {
		grid-template-columns: repeat(4, 1fr);
	}
}

.activity-view.search-activity.slide-layout .search_result {
	background: var(--bg-secondary);
	border-radius: 12px;
	overflow: hidden;
	position: relative;
	opacity: 0;
	transform: translateY(10px);
	animation: fadeInUp 0.5s ease forwards;
	flex-direction: column;
	height: auto;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.activity-view.search-activity.slide-layout .search_result:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.activity-view.search-activity.slide-layout .search_result.vip_background {
	background: linear-gradient(135deg, var(--bg-secondary), rgba(218, 165, 32, 0.2));
	box-shadow: 0 4px 15px rgba(218, 165, 32, 0.3);
}

.activity-view.search-activity.slide-layout .profile_img {
	width: 100%;
	height: 350px;
	position: relative;
	overflow: hidden;
}

.activity-view.search-activity.slide-layout .profile_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.activity-view.search-activity.slide-layout .search_result:hover .profile_img img {
	/*transform: scale(1.05);*/
}

.activity-view.search-activity.slide-layout .profile_info {
	padding: 16px;
	display: flex;
	flex-direction: column;
	background: var(--bg-secondary);
	position: relative;
}

.activity-view.search-activity.slide-layout .user-header {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.activity-view.search-activity.slide-layout .user-name-row {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
	flex-wrap: wrap;
}

.activity-view.search-activity.slide-layout .user-name-age {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 1;
}

.activity-view.search-activity.slide-layout .male-nickname,
.activity-view.search-activity.slide-layout .female-nickname,
.activity-view.search-activity.slide-layout .male,
.activity-view.search-activity.slide-layout .female {
	font-size: 1.2em;
	font-weight: 500;
	color: var(--text-primary);
	line-height: 1.2;
}

.activity-view.search-activity.slide-layout .female,
.activity-view.search-activity.slide-layout .female-nickname {
	color: #ff69b4;
}

.activity-view.search-activity.slide-layout .male,
.activity-view.search-activity.slide-layout .male-nickname {
	color: #3498db;
}

.activity-view.search-activity.slide-layout .user-age {
	font-size: 1em;
	font-weight: 500;
	color: var(--text-primary);
	background: rgba(59, 130, 246, 0.2);
	padding: 4px 12px;
	border-radius: 12px;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 45px;
}

.activity-view.search-activity.slide-layout .last-login {
	font-size: 0.85em;
	color: var(--text-secondary);
	opacity: 0.7;
	white-space: nowrap;
	margin-left: auto;
}

.activity-view.search-activity.slide-layout .user-location {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--text-secondary);
	font-size: 0.9em;
}

.activity-view.search-activity.slide-layout .user-location::before {
	content: '📍';
	font-size: 1em;
}

.activity-view.search-activity.slide-layout .user-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin-top: 16px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	overflow: hidden;
}

.activity-view.search-activity.slide-layout .stat-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	padding: 8px;
	background: var(--bg-secondary);
}

.activity-view.search-activity.slide-layout .stat-label {
	font-size: 0.75em;
	color: var(--text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.activity-view.search-activity.slide-layout .stat-value {
	font-size: 1em;
	font-weight: 500;
	color: var(--text-primary);
}

.activity-view.search-activity.slide-layout .empty-state-message {
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 40px 20px;
	text-align: center;
	min-height: 300px;
	gap: 16px;
}

.activity-view.search-activity.slide-layout .empty-state-message.visible {
	display: flex;
}

.activity-view.search-activity.slide-layout .no-results-icon {
	font-size: 48px;
	margin-bottom: 16px;
}

.activity-view.search-activity.slide-layout .empty-state-message h3 {
	font-size: 1.5em;
	font-weight: 500;
	color: var(--text-primary);
	margin-bottom: 8px;
}

.activity-view.search-activity.slide-layout .empty-state-message p {
	color: var(--text-secondary);
	max-width: 80%;
	margin-bottom: 20px;
}

.activity-view.search-activity.slide-layout .try-again-btn {
	margin-top: 16px;
}

.activity-view.search-activity.slide-layout .col.card {
	width: 100%;
}

.activity-view.search-activity.slide-layout .loading-more {
	display: none;
}

.activity-view.search-activity.slide-layout .loading-more.visible {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
	gap: 12px;
}

.activity-view.search-activity.slide-layout .spinner {
	width: 40px;
	height: 40px;
	border: 4px solid rgba(255, 255, 255, 0.1);
	border-left-color: #3498db;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

.activity-view.search-activity.slide-layout .loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 40px;
	gap: 20px;
	min-height: 300px;
}

.activity-view.search-activity.slide-layout .search-results-end-message {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
	margin-top: 16px;
	margin-bottom: 20px;
	grid-column: 1 / -1;
	/* Съобщението да заема цялата ширина на grid layout */
}

.activity-view.search-activity.slide-layout .end-message-content {
	text-align: center;
	padding: 10px 20px;
	border-radius: 20px;
	background: var(--bg-secondary);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	opacity: 0.7;
}

.activity-view.search-activity.slide-layout .end-message-content p {
	color: var(--text-secondary);
	font-size: 0.9em;
}

/* Missing gradientMove animation for search header */
@keyframes gradientMove {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

/* Missing fadeInUp animation for search results */
@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Missing spin animation for search loading */
@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* ! premium-promo.css ! */
/* Premium Promo Popup */
.premium-promo {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.8);
	backdrop-filter: blur(8px);
	z-index: 2000;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.premium-promo.show {
	opacity: 1;
	visibility: visible;
	z-index: 9999;
}

.premium-promo-content {
	background: var(--bg-primary);
	border-radius: 16px;
	width: 90%;
	max-width: 340px;
	padding: 24px;
	text-align: center;
}

.premium-promo.show .premium-promo-content {
	transform: translateY(0);
}

.premium-promo-header {
	text-align: center;
	margin-bottom: 24px;
	position: relative;
}

.premium-description {
	color: var(--text-secondary);
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 20px;
	padding: 0 16px;
}


.premium-icon::after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	width: 20px;
	height: 4px;
	background: radial-gradient(ellipse,
			rgba(255, 215, 0, 0.3),
			transparent 70%);
	border-radius: 50%;
	animation: shadow 3s ease-in-out infinite;
}

@keyframes shadow {
	0% {
		transform: translateX(-50%) scale(1);
		opacity: 0.3;
	}

	50% {
		transform: translateX(-50%) scale(0.8);
		opacity: 0.1;
	}

	100% {
		transform: translateX(-50%) scale(1);
		opacity: 0.3;
	}
}

.premium-promo-header h3 {
	font-size: 20px;
	color: #ffd700;
	margin-bottom: 12px;
}

.premium-features {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 20px 0;
}

.feature-item {
	background: linear-gradient(135deg,
			rgba(18, 20, 28, 0.95) 0%,
			rgba(255, 215, 0, 0.05) 100%);
	border-radius: 12px;
	padding: 16px;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	border: 1px solid rgba(255, 215, 0, 0.1);
	transition: all 0.3s ease;
}

.feature-item:hover {
	background: linear-gradient(135deg,
			rgba(18, 20, 28, 0.98) 0%,
			rgba(255, 215, 0, 0.1) 100%);
	border-color: rgba(255, 215, 0, 0.2);
	transform: translateX(4px);
}

.feature-text h4 {
	background: linear-gradient(90deg, #ffd700, #ffa500);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 13px;
	margin-bottom: 4px;
}

.feature-text {
	text-align: left;
}

.feature-text p {
	color: var(--text-secondary);
	font-size: 11px;
	line-height: 1.4;
}

/* Обновяваме стилове за цената */
.premium-price {
	background: linear-gradient(135deg,
			rgba(255, 215, 0, 0.1) 0%,
			rgba(18, 20, 28, 0.95) 100%);
	border: 1px solid rgba(255, 215, 0, 0.15);
	border-radius: 12px;
	padding: 20px;
	margin: 24px 0;
	position: relative;
	overflow: hidden;
}

.premium-price::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg,
			transparent,
			rgba(255, 215, 0, 0.5),
			transparent);
}

.price-tag {
	position: relative;
	z-index: 1;
}

.price-tag .amount {
	font-size: 28px;
	color: #ffd700;
	font-weight: bold;
}

.price-tag .period {
	color: var(--text-secondary);
	font-size: 13px;
}

.price-note {
	color: var(--text-secondary);
	font-size: 11px;
	margin-top: 4px;
}

/* Обновяваме footer items */
.premium-footer {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-item {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--text-secondary);
	font-size: 11px;
	text-align: left;
	flex: 1;
}

.footer-item span:first-child {
	transition: all 0.3s ease;
}

.footer-item:hover span:first-child {
	transform: scale(1.2);
	filter: brightness(1.2);
}

.footer-item::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg,
			transparent,
			rgba(255, 215, 0, 0.5),
			transparent);
	transition: transform 0.3s ease;
}

.footer-item:hover::after {
	transform: translateX(-50%) scaleX(1);
}

.subscribe-button {
	width: 100%;
	background: linear-gradient(45deg, #ffd700, #ffa500, #ffd700);
	background-size: 200% 200%;
	animation: gradientShift 3s ease infinite;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
	border: none;
	border-radius: 8px;
	padding: 14px;
	font-size: 13px;
	font-weight: bold;
	cursor: pointer;
	transition: all 0.2s ease;
}

@keyframes gradientShift {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

.subscribe-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(255, 215, 0, 0.2);
}

/* ! search.css ! */

