/**
 * 1.8.490 — Product ratings and reviews.
 * Navy #0f143a, yellow #F3C91A stars, Oswald headings, Montserrat body,
 * square buttons. Scoped wrappers so we do not fight main.css tails.
 */

/* -------------------------------------------------------------------------
   Stars (Woo .star-rating glyph font): empty navy-faint, filled yellow.
   ------------------------------------------------------------------------- */

.idx-rating-490,
.woocommerce .idx-rating-490,
.woocommerce div.product .woocommerce-product-rating {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.65rem;
	margin: 0 0 0.85rem;
	line-height: 1;
}

.idx-rating-490 .star-rating,
.woocommerce .idx-rating-490 .star-rating,
.woocommerce div.product .woocommerce-product-rating .star-rating,
.woocommerce .star-rating {
	float: none;
	color: #F3C91A;
	font-size: 1rem;
}

.woocommerce .star-rating::before,
.woocommerce .idx-rating-490 .star-rating::before,
.woocommerce div.product .star-rating::before {
	color: rgba(15, 20, 58, 0.22);
}

.woocommerce .star-rating span,
.woocommerce .star-rating span::before {
	color: #F3C91A;
}

.idx-rating-490--single .woocommerce-review-link,
.woocommerce div.product .woocommerce-product-rating .woocommerce-review-link {
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.875rem;
	font-weight: 600;
	color: #0f143a;
	text-decoration: underline;
	text-underline-offset: 2px;
	letter-spacing: 0.01em;
}

.idx-rating-490--single .woocommerce-review-link:hover,
.idx-rating-490--single .woocommerce-review-link:focus-visible,
.woocommerce div.product .woocommerce-product-rating .woocommerce-review-link:hover,
.woocommerce div.product .woocommerce-product-rating .woocommerce-review-link:focus-visible {
	color: #8f1c2c;
}

.idx-rating-490__first {
	font-weight: 700;
}

/* Designer / configurator / engrave: sit cleanly under the (custom) title. */
body.idx-designer-product .idxpd-card__title + .idx-rating-490,
body.idx-designer-product [data-idxpd-card-title] + .idx-rating-490 {
	margin: 0.35rem 0 0.7rem;
}

body.idx-engrave-product div.product .summary .product_title + .idx-rating-490,
body.idx-configurator div.product .summary .product_title + .idx-rating-490,
body.idx-designer-product div.product .summary .product_title + .idx-rating-490,
.woocommerce div.product .summary .product_title + .woocommerce-product-rating {
	margin-top: 0.15rem;
}

/* -------------------------------------------------------------------------
   Archive / landing cards: compact, only rendered when count > 0.
   ------------------------------------------------------------------------- */

.idx-rating-490--loop {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0;
	padding: 0 0.65rem 0.15rem;
	line-height: 1;
}

.idx-shop-archive .idxshop-main ul.products li.product .idx-rating-490--loop {
	padding: 0 0.65rem 0.2rem;
}

.idx-rating-490--loop .star-rating {
	font-size: 0.8125rem;
}

.idx-rating-490__count {
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.75rem;
	font-weight: 600;
	color: #5a5f7a;
}

/* Shop landing 487 cards (the card is an <a>, so no inner link). */
.idxland-card .idx-rating-490--loop {
	padding: 0.15rem 0 0;
	margin: 0;
}

html.idx-dense-view-list .idx-shop-archive .idxshop-main ul.products li.product .idx-rating-490--loop,
html.idx-signs-view-list .idx-shop-archive .idxshop-main ul.products li.product .idx-rating-490--loop {
	padding: 0.1rem 0;
}

/* -------------------------------------------------------------------------
   Reviews tab visible on every product, including configurator (381 hid it).
   ------------------------------------------------------------------------- */

body.idx-configurator div.product > .woocommerce-tabs,
body.idx-designer-product div.product > .woocommerce-tabs,
body.idx-engrave-product div.product > .woocommerce-tabs,
body.chamevo-product div.product > .woocommerce-tabs {
	display: block !important;
	grid-column: 1 / -1;
	width: 100%;
	max-width: 100%;
	clear: both;
	float: none;
	margin-top: 1.5rem;
}

/* -------------------------------------------------------------------------
   Reviews tab, list, form — brand.
   ------------------------------------------------------------------------- */

.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs.wc-tabs-wrapper {
	margin-top: 2rem;
	padding: 0;
	background: transparent;
	border: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs,
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	border-bottom: 2px solid #e4e6ef;
	background: transparent;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce div.product .woocommerce-tabs ul.tabs li.reviews_tab,
.woocommerce div.product .woocommerce-tabs ul.tabs li.description_tab,
.woocommerce div.product .woocommerce-tabs ul.tabs li.additional_information_tab {
	margin: 0 0 -2px !important;
	padding: 0 !important;
	border: 0 !important;
	border-bottom: 2px solid transparent !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0.55rem 1.05rem !important;
	font-family: var(--font-head, Oswald, sans-serif);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #0f143a !important;
	background: transparent !important;
	border: 0 !important;
	text-decoration: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	border-bottom: 2px solid #F3C91A !important;
	color: #0f143a !important;
}

.woocommerce div.product .woocommerce-tabs .panel,
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
	margin: 0;
	padding: 1.4rem 0 1.75rem;
	background: transparent;
	border: 0;
}

.woocommerce div.product .woocommerce-tabs .panel > h2,
.woocommerce-Reviews-title,
#reviews .comment-reply-title,
#review_form #reply-title,
#review_form .comment-reply-title {
	margin: 0 0 1rem;
	font-family: var(--font-head, Oswald, sans-serif);
	font-weight: 600;
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	letter-spacing: 0.02em;
	color: #0f143a;
	text-transform: none;
}

.woocommerce-Reviews,
#reviews.woocommerce-Reviews {
	font-family: var(--font-body, Montserrat, sans-serif);
	color: #0f143a;
}

.woocommerce-Reviews .woocommerce-noreviews {
	margin: 0 0 1.25rem;
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.95rem;
	color: #5a5f7a;
}

/* Review list */
.woocommerce-Reviews .commentlist,
#reviews #comments ol.commentlist {
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
}

.woocommerce-Reviews .commentlist li,
#reviews #comments ol.commentlist li {
	margin: 0 0 1rem;
	padding: 1.05rem 1.15rem;
	background: #fff;
	border: 1px solid #e4e6ef;
	border-left: 4px solid #F3C91A;
	border-radius: 0;
	box-shadow: none;
}

.woocommerce-Reviews .comment-text,
#reviews .comment-text {
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
}

.woocommerce-review__author,
#reviews .woocommerce-review__author {
	font-family: var(--font-head, Oswald, sans-serif);
	font-weight: 600;
	font-size: 1rem;
	color: #0f143a;
}

.woocommerce-review__verified,
#reviews em.woocommerce-review__verified,
#reviews em.verified {
	display: inline-block;
	margin-left: 0.4rem;
	padding: 0.12rem 0.45rem;
	font-family: var(--font-body, Montserrat, sans-serif);
	font-style: normal;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #0f143a;
	background: #F3C91A;
	border-radius: 0;
}

.woocommerce-review__published-date,
#reviews .woocommerce-review__published-date,
#reviews .woocommerce-review__dash {
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.8125rem;
	color: #5a5f7a;
}

.woocommerce-Reviews .star-rating,
#reviews .star-rating {
	margin: 0.35rem 0 0.5rem;
}

.woocommerce-Reviews .description,
#reviews .description,
#reviews .comment-text p {
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.95rem;
	line-height: 1.55;
	color: #0f143a;
}

/* Verified-buyer notice */
.woocommerce-verification-required,
#reviews .woocommerce-verification-required,
p.woocommerce-verification-required {
	display: block;
	margin: 1rem 0 0;
	padding: 0.95rem 1.15rem;
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.45;
	color: #0f143a;
	background: #fff8d6;
	border: 1px solid #F3C91A;
	border-left: 4px solid #F3C91A;
	border-radius: 0;
}

/* Review form */
#review_form_wrapper,
#reviews #review_form_wrapper {
	margin-top: 0.5rem;
	padding: 1.25rem 1.35rem 1.4rem;
	background: #f5f6fa;
	border: 1px solid #e4e6ef;
	border-radius: 0;
}

#review_form .comment-form-rating label,
#review_form .comment-form-comment label,
#review_form .comment-form-author label,
#review_form .comment-form-email label,
#review_form label {
	display: block;
	margin: 0 0 0.35rem;
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0f143a;
}

#review_form .comment-form-comment textarea,
#review_form input[type="text"],
#review_form input[type="email"] {
	width: 100%;
	max-width: 100%;
	padding: 0.65rem 0.75rem;
	font-family: var(--font-body, Montserrat, sans-serif);
	font-size: 0.95rem;
	color: #0f143a;
	background: #fff;
	border: 1px solid #c9cde0;
	border-radius: 0;
	box-shadow: none;
}

#review_form .comment-form-comment textarea:focus,
#review_form input[type="text"]:focus,
#review_form input[type="email"]:focus {
	outline: 2px solid #F3C91A;
	outline-offset: 1px;
	border-color: #0f143a;
}

#review_form .form-submit {
	margin: 1rem 0 0;
}

#review_form .form-submit input[type="submit"],
#review_form .form-submit .submit,
#review_form input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.55rem 1.25rem;
	font-family: var(--font-head, Oswald, sans-serif);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #0f143a;
	background: #F3C91A;
	border: 2px solid #F3C91A;
	border-radius: 0 !important;
	cursor: pointer;
	box-shadow: none;
}

#review_form .form-submit input[type="submit"]:hover,
#review_form .form-submit input[type="submit"]:focus-visible {
	background: #0f143a;
	border-color: #0f143a;
	color: #fff;
}

/* Woo converts #rating <select> into .stars pips */
#review_form p.stars,
#review_form .comment-form-rating p.stars {
	margin: 0.25rem 0 0.85rem;
}

#review_form p.stars a,
#review_form p.stars a::before,
#review_form p.stars a:hover,
#review_form p.stars a.active,
#review_form p.stars a.selected {
	color: #F3C91A;
}

#review_form p.stars a {
	border-radius: 0;
}

@media (max-width: 600px) {
	.woocommerce div.product .woocommerce-tabs ul.tabs li a {
		padding: 0.5rem 0.75rem !important;
		font-size: 0.85rem;
	}
	#review_form_wrapper,
	#reviews #review_form_wrapper {
		padding: 1rem;
	}
	.woocommerce-Reviews .commentlist li,
	#reviews #comments ol.commentlist li {
		padding: 0.85rem 0.9rem;
	}
}

/* Staging aid in main.css outlines img[alt=""] in red; Woo avatars often have empty alt. */
#reviews img.avatar,
.woocommerce-Reviews img.avatar,
#reviews .comment_container img {
	outline: none !important;
	border-radius: 0;
	border: 1px solid #e4e6ef;
}
