/* ==========================================================================
   Блок отзывов «как приложение» (29.09.2026) — components/main/reviews
   (+ review-item, rating-stars). Общий для карточки товара (.item-page) и
   страницы продавца (.profile-page); раньше жил в item-v2.css. Телефон —
   reviews_block.dart / review_tile.dart приложения, ПК — белая карточка r24.
   Разметка и формы отзывов (popup-form-stop, name, маршруты) — прежние.
   ========================================================================== */

/* звёзды выбора в окне отзыва — золото, как в приложении */
:is(.item-page, .profile-page) .review-rating-input label {
	font-size: 36px;
}

:is(.item-page, .profile-page) .review-rating-input input:checked ~ label,
:is(.item-page, .profile-page) .review-rating-input label:hover,
:is(.item-page, .profile-page) .review-rating-input label:hover ~ label {
	color: var(--rating-gold);
}

/* ==========================================================================
   ПК (≥769) — белая карточка r24
   ========================================================================== */
@media (min-width: 769px) {
	:is(.item-page, .profile-page) .review-section {
		margin-bottom: 24px;
		padding: 28px;
		border-radius: 24px;
		background: var(--white);
	}

	:is(.item-page, .profile-page) .review-title {
		font-size: 24px;
		font-weight: 700;
	}

	:is(.item-page, .profile-page) .review-empty {
		padding: 24px 20px;
	}
}

@media (min-width: 769px) and (max-width: 992px) {
	:is(.item-page, .profile-page) .review-section {
		padding: 22px;
	}
}

/* ==========================================================================
   ТЕЛЕФОН (≤768) — reviews_block.dart / review_tile.dart
   ========================================================================== */
@media (max-width: 768px) {
	/* товар: блок на белом листе — подложка невидима, отступ 16 */
	.item-page .review-section {
		margin: 24px 0 0;
		padding: 16px;
	}

	/* продавец: на светлом листе — белая карточка r20, padding 16 */
	.profile-page .review-section {
		margin: 12px 0 0;
		padding: 16px;
		border-radius: 20px;
		background: var(--white);
	}

	:is(.item-page, .profile-page) .review-header {
		flex-wrap: nowrap;
		gap: 6px;
		margin-bottom: 14px;
	}

	:is(.item-page, .profile-page) .review-title {
		font-size: 16px;
		font-weight: 600;
		line-height: 20px;
	}

	:is(.item-page, .profile-page) .review-count {
		font-weight: inherit;
		color: inherit;
	}

	:is(.item-page, .profile-page) .review-summary {
		gap: 6px;
	}

	:is(.item-page, .profile-page) .review-summary .rating-stars {
		letter-spacing: 0;
	}

	:is(.item-page, .profile-page) .review-summary-value {
		font-size: 14px;
	}

	:is(.item-page, .profile-page) .review-list {
		gap: 10px;
	}

	:is(.item-page, .profile-page) .review-item,
	:is(.item-page, .profile-page) .review-item--mine {
		padding: 14px;
		border: 1px solid rgb(22 14 24 / 8%); /* black 8 % */
		border-radius: 14px;
		background: var(--white);
	}

	:is(.item-page, .profile-page) .review-item-top {
		align-items: center;
		gap: 10px;
	}

	:is(.item-page, .profile-page) .review-item-avatar {
		width: 36px;
		height: 36px;
		background: rgb(22 14 24 / 6%);
	}

	:is(.item-page, .profile-page) .review-item-avatar svg {
		width: 18px;
		height: 18px;
	}

	:is(.item-page, .profile-page) .review-item-name {
		font-size: 14px;
	}

	:is(.item-page, .profile-page) .review-item-mine-badge {
		background: var(--card-lilac);
		color: var(--accent);
	}

	:is(.item-page, .profile-page) .review-item-meta .rating-stars--sm {
		font-size: 14px;
		letter-spacing: 0;
	}

	:is(.item-page, .profile-page) .review-item-date {
		font-size: 12px;
		color: rgb(22 14 24 / 50%);
	}

	:is(.item-page, .profile-page) .review-item-text {
		margin-top: 10px;
		line-height: 20px;
	}

	:is(.item-page, .profile-page) .review-item-target {
		font-size: 12px;
		color: rgb(22 14 24 / 50%);
	}

	:is(.item-page, .profile-page) .review-item-edited-note {
		margin-top: 6px;
		font-size: 11px;
		color: rgb(22 14 24 / 40%);
	}

	:is(.item-page, .profile-page) .review-empty {
		padding: 0;
		border-radius: 0;
		background: none;
		text-align: left;
		font-size: 13px;
		font-weight: 500;
		color: rgb(22 14 24 / 50%);
	}

	:is(.item-page, .profile-page) .review-cta {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		margin-top: 14px;
	}

	/* пустой блок кнопок (свой профиль / нельзя оставить отзыв): внутри
	   только пробелы, :empty не срабатывает — прячем, если нет ни одной ссылки */
	:is(.item-page, .profile-page) .review-cta:not(:has(a, button)) {
		display: none;
	}

	:is(.item-page, .profile-page) .review-write-btn {
		width: 100%;
		height: 48px;
		border-radius: 16px;
		font-size: 14px;
		font-weight: 700;
	}

	:is(.item-page, .profile-page) .review-login-link,
	:is(.item-page, .profile-page) .review-all-link {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 4px;
		height: 44px;
		margin: 0;
		border-radius: 14px;
		background: var(--light);
		font-size: 13px;
		font-weight: 600;
		color: var(--accent);
		text-decoration: none;
	}

	:is(.item-page, .profile-page) .review-all-link::after {
		content: "";
		width: 18px;
		height: 18px;
		background-color: currentColor;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M6 5l2.36 2.36a.9.9 0 0 1 0 1.28L6 11' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M6 5l2.36 2.36a.9.9 0 0 1 0 1.28L6 11' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
	}
}
