@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
	user-select: none;
}

body {
	background: linear-gradient(270deg, #6a11cb, #2575fc, #6a11cb);
	background-size: 600% 600%;
	animation: gradientMove 15s ease infinite;
}

@keyframes gradientMove {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

/* КАРТОЧКА ПОЛЬЗОВАТЕЛЯ */
.avatar__cards {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: row;
	flex-wrap: wrap;
}

.avatar__card {
	height: 30rem;
	width: 20rem;
	perspective: 1000px;
	margin: 1rem;
	cursor: pointer;
	user-select: none;
}

.flip-card-container {
	height: 100%;
	width: 100%;
	box-sizing: border-box;
	position: relative;
	transform-style: preserve-3d;
	transition: transform 1s;
}

.front,
.back {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
	height: 100%;
	width: 100%;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25), /* Темная тень для глубины */ 0 0 12px rgba(37, 117, 252, 0.3); /* Очень мягкое голубое свечение, не "кричит" */
	transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); /* Быстрый старт, медленное затухание */
	position: absolute;
	backface-visibility: hidden;
	padding: 0.3rem 1rem;
}

.front:hover {
	transform: translateY(-8px);
	box-shadow: 0 25px 50px rgba(0, 0, 0, 0.45), /* Глубочайшая тень для максимального отделения */ 0 0 40px rgba(37, 117, 252, 1), /* Очень яркое голубое свечение */ 0 0 60px rgba(255, 255, 255, 0.8); /* Белый ореол, имитирующий ослепительный блик */
}
/*  */
.front::before {
	/* Стили псевдоэлемента для рамки */
	opacity: 1; /* Рамка становится видимой */
	/* Добавить анимацию background-position здесь, чтобы рамка "переливалась" */
	animation: gradientFrameMove 6s linear infinite; /* Плавное движение */
}
.front.is-top::before {
	/* Псевдоэлемент для полоски сверху */
	content: 'ТОП';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%) translateY(-100%);
	background: linear-gradient(90deg, #ff7f00, #ffff00); /* Оранжево-желтый градиент */
	color: #1a202c;
	padding: 2px 10px;
	border-radius: 8px 8px 0 0;
	font-size: 0.7em;
	font-weight: 800;
	letter-spacing: 0.5px;
	box-shadow: 0 -5px 15px rgba(255, 127, 0, 0.5); /* Мягкое свечение */
}
/*  */
.back {
	transform: rotateY(180deg);
	/* background: #edeef0; */
	box-shadow: inset 0 0 15px rgba(37, 117, 252, 0.1), /* Легкое голубое свечение */ 0 5px 20px rgba(0, 0, 0, 0.1); /* Внешняя тень для глубины */
}

.flip-card {
	transform: rotateY(180deg);
}

/* FRONT CARD */
.address__profession {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-weight: 600;
	font-size: 0.7rem;
	color: #626d7a;
	margin-bottom: 0.5rem;
	width: 100%;
}

.address {
	/* width: 9rem;
	display: flex;
	align-items: center; */

	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	margin-right: 8px;
	background-color: rgba(37, 117, 252, 0.1); /* Полупрозрачный голубой */
	color: #2575fc; /* Яркий голубой текст */
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
}

.address svg {
	margin-right: 0.2rem;
}

.profession {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	margin-right: 8px;
	background-color: rgba(37, 117, 252, 0.1); /* Полупрозрачный голубой */
	color: #2575fc; /* Яркий голубой текст */
	border-radius: 20px;
	font-size: 0.75rem;
	font-weight: 600;
}

.profession svg {
	margin-right: 0.2rem;
}

/* AVATAR */
.avatar {
	width: 100%;
	border-radius: 18px;
	object-fit: cover;
	aspect-ratio: 1 / 1;
	filter: brightness(0.9);
}

.front:hover .avatar {
	filter: brightness(1.1);
}
/* AVATAR */

/* ИМЯ */
.card__name {
	color: #212529;
	font-size: 1.3em;
	font-weight: 700;
	margin: 0.5rem 0rem 0.5rem 0rem;
	text-align: center;
}

/* РЕЙТИНГ */
.rating {
	width: 100%;
	height: 1.5rem;
	border: 0.2rem solid #fff;
	background: #f7f7f7;
	text-align: center;
	color: #8ea3be;
	font-weight: 600;
	font-size: 0.9rem;
	position: relative;
}

.rating__number {
	position: relative;
	display: block;
}

.rating-value {
	position: absolute;
	background: #dae2e8;
	top: 0;
	height: 1.1rem;
}

/* Общий контейнер для полоски и числа */
.rating-bar-wrapper {
	display: flex;
	align-items: center;
	width: 100%;
	height: 20px;
	background-color: #f0f2f5; /* Очень светлый фон для пустой части */
	/* background: linear-gradient(90deg, #6a11cb, #2575fc); */
	border-radius: 15px;
	overflow: hidden;
	position: relative;
	box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
}

/* Часть, которая показывает заполненный рейтинг */
.rating-bar-fill {
	height: 100%;
	border-radius: 15px 0 0 15px;
	transition: width 0.5s ease-out;
	box-shadow: 0 0 10px rgba(37, 117, 252, 0.6);
}

/* Число рейтинга */
.rating-score-display {
	position: absolute;
	width: 100%;
	text-align: center;
	font-size: 1.1em;
	font-weight: 800;
	color: #212529;
	text-shadow: 0 0 5px rgba(255, 255, 255, 0.7);
	z-index: 0; /* Над полоской */
}
/* РЕЙТИНГ */

/* СТАТУС */
.status {
	font-size: 0.8rem;
	font-weight: 600;
	overflow: auto;
	margin-top: 0.5rem;
	font-style: italic;
	color: #212529;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 2.4rem;
	width: 100%;
	line-height: 1;
	overflow: hidden;
	/* border: 1px solid black; */
}

/* КНОПКИ ВНИЗУ КАРТОЧКИ */
.buttons {
	position: absolute;
	bottom: 0;
	display: flex;
	width: 100%;
	justify-content: space-between;
	padding: 0.5rem;
	border-radius: 18px;
	box-shadow: 0 -2px 5px rgba(37, 117, 252, 0.1);
}

.btn {
	border-radius: 1rem;
	justify-self: center;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	text-decoration: none;
	font-weight: 600;
	font-size: 1rem;
	color: #6c757d;
}

.btn svg {
	margin-right: 0.3rem;
	pointer-events: none;
}

.btn:hover {
	text-shadow: 0 0 6px rgba(255, 127, 0, 0.8);
}

.btn:hover svg {
	fill: #ff7f00;
}

.count_share,
.count_like {
	pointer-events: none;
}

.btn__like svg {
	fill: #ff0000;
}

/* BACK CARD */
.back__menu__wrapper {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.back__menu {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.add__rating {
	/* Ваш градиент, но с увеличенным размером для анимации */
	background: linear-gradient(90deg, #6a11cb, #2575fc, #6a11cb);
	background-size: 300% 100%; /* Увеличиваем ширину в 3 раза */
	background-position: 0% 50%; /* Изначальное положение */

	color: #ffffff;
	font-weight: 700;
	border-radius: 25px;
	padding: 8px 15px;

	/* Добавляем плавность для всех изменений */
	transition: all 0.4s ease-in-out;

	/* Изначальная тень (мягкое свечение) */
	box-shadow: 0 4px 15px rgba(106, 17, 203, 0.6);

	color: #fff;
	font-weight: 600;
	font-size: 0.8rem;
	padding: 0.2rem 1rem;
	border-radius: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.add__rating svg {
	margin-left: 0.3rem;
	width: 18px;
	height: 18px;
	margin-right: 6px;
	fill: #ffff00;
	stroke: #ffff00;
	stroke-width: 1;
	filter: drop-shadow(0 0 5px rgba(255, 255, 0, 0.9));
	transition: all 0.3s ease-in-out;
}

.add__rating:hover {
	background-position: 100% 50%;
	box-shadow: 0 8px 20px rgba(106, 17, 203, 0.8), 0 0 15px rgba(37, 117, 252, 0.9);
}

.add__rating:hover svg {
	filter: drop-shadow(0 0 8px rgba(255, 255, 0, 1)); /* Усиленное свечение */
	transform: scale(1.1); /* Легкое увеличение */
}

.dropdown {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	font-size: 0.8rem;
	background: #fff;
	padding: 0.2rem 1rem;
	border-radius: 0.3rem;
	color: #36c;
	position: relative;
	box-shadow: 0px 0px 8px 0px rgba(34, 60, 80, 0.2);

	background-color: #ffffff;
	color: #2575fc; /* Акцентный синий текст */
	border: 1px solid #b0c4de; /* Мягкая рамка */
	border-radius: 25px;
	padding: 4px 15px;
	font-weight: 600;

	/* При наведении: заливка цветом */
	transition: all 0.2s ease;
}

.dropdown svg {
	margin-left: 0.3rem;
}

.dropdown-menu {
	display: none;
	position: absolute;
	right: 0;
	top: 1.5rem;
	background-color: #fff;
	min-width: 160px;
	width: auto;
	box-shadow: 0px 0px 8px 0px rgba(34, 60, 80, 0.5);
	z-index: 1;
	border-radius: 16px;
	padding: 0.5rem;
}

.dropdown:hover .dropdown-menu {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.menu__item {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	white-space: nowrap;

	color: #6c757d;

	font-weight: 500;
	font-size: 0.8rem;
	padding: 0.3rem;
	border-radius: 0.3rem;
	text-decoration: none;

	transition: all 0.3s ease;
}

.menu__item svg {
	margin-right: 0.3rem;
}

.menu__item:hover {
	background-color: rgba(37, 117, 252, 0.1);
	color: #2575fc;
}

.dropdown__hr {
	width: 100%;
	margin: 0.3rem 0;
	padding: 0;
	height: 0;
	border-color: rgba(65, 57, 54, 0.1);
}

.more__information {
	color: #212529; /* Глубокий антрацит */
	font-weight: 600;
	font-size: 0.9rem;
	margin-top: 0.5rem;
	text-align: left;
	padding: 0.5rem;
	width: 100%;
	height: 100%;
	border-radius: 0.5rem;
	background-color: #fff;
	overflow: hidden;

	/* ... текущие стили: белый фон, скругление ... */
	background-color: #ffffff;
	border-radius: 0.5rem;

	/* УСИЛЕННЫЙ ВНУТРЕННИЙ BOX-SHADOW ДЛЯ ФОНА */
	box-shadow: 
        /* 1. Очень тонкая, четкая внутренняя рамка (ореол) */ inset 0 0 0 1px rgba(37, 117, 252, 0.4), /* 2. Мягкое внутреннее свечение (для глубины) */ inset 0 0 15px rgba(106, 17, 203, 0.1);

	/* Добавляем легкую внешнюю тень для приподнятости */
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.scroll_css {
	overflow: auto;
}

.contacts__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000000;
	font-weight: 600;
	font-size: 1rem;
	margin-top: 0.5rem;
	background: #fff;
	padding: 0.3rem 1rem;
	border-radius: 0.5rem;
	position: relative;
	box-shadow: 0px 0px 8px 0px rgba(34, 60, 80, 0.2);

	background-color: #ff7f00; /* Яркий Оранжевый */
	color: #ffffff;
	font-weight: 700;
	border-radius: 25px;
	/* padding: 10px 25px; */

	/* Свечение (имитирует Неоновый Желтый спереди, но в оранжевом тоне) */
	box-shadow: 0 4px 15px rgba(255, 127, 0, 0.7);

	display: flex;
	align-items: center;
}

.contacts__btn svg {
	margin-right: 0.3rem;
}

.contact__icon {
	width: 24px;
	height: 24px;
	margin-right: 0.3rem;
}

.contacts-menu {
	display: none;
	position: absolute;
	top: -10rem;
	/* left: 0; */
	left: -6.5rem;
	background: transparent;
	width: 15rem;
	z-index: 1;
	padding: 0.5rem;
	height: 10rem;
}

.contacts__btn:hover .contacts-menu {
	display: block;
}

.contacts__list {
	background-color: #fff;
	width: auto;
	box-shadow: 0px 0px 8px 0px rgba(34, 60, 80, 0.5);
	z-index: 1;

	padding: 0.5rem;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;

	border-radius: 16px; /* Премиальное скругление */
	/* padding: 10px 0; */

	/* Эффект парения и мягкое свечение */
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25), /* Глубокая тень */ 0 0 10px rgba(37, 117, 252, 0.2); /* Мягкое голубое свечение */
}

.reviews__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	font-size: 1rem;
	background: #fff;
	padding: 0.3rem 1rem;
	border-radius: 0.3rem;
	color: #36c;
	position: relative;
	box-shadow: 0px 0px 8px 0px rgba(34, 60, 80, 0.2);

	background-color: #ffffff;
	color: #2575fc; /* Акцентный синий текст */
	border: 1px solid #b0c4de; /* Мягкая рамка */
	border-radius: 25px;
	padding: 4px 15px;
	font-weight: 600;
	margin-top: 0.5rem;
	transition: all 0.2s ease;
}

.reviews__btn svg{
	margin-left: .3rem;
}

.dropdown svg {
	margin-left: 0.3rem;
}

.reviews-count-badge{
    position: absolute;
    top: -5px; 
    right: -5px;   
    min-width: 20px;
    height: 20px;
    padding: 0 4px;
    background-color: #FF4D4D;
    color: white;
    font-size: 12px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    z-index: 10;
}
/* КАРТОЧКА ПОЛЬЗОВАТЕЛЯ */
