/*
 * Testimonials — Write a Review tab + FAQs tab
 * Depends on: design-tokens.css, log-test-explorer.css
 * Page: body.log-testimonials-page
 */

.write-tab-inner { text-align: center; padding: 10px 0 6px; }

.write-seal {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: linear-gradient(150deg, var(--sage-500), var(--plum-600));
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	margin: 0 auto 16px;
	box-shadow: 0 12px 26px rgba(45, 80, 72, .25);
}

.star-row { display: flex; gap: 8px; justify-content: center; margin: 20px 0; }
.sp-star { font-size: 32px; color: var(--line); cursor: pointer; line-height: 1.2; transition: transform .2s var(--ease), color .2s var(--ease); }
.sp-star:hover, .sp-star.active { color: var(--sage-600); transform: scale(1.15); }

.write-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 8px; }

.btn-outline-white {
	border: 1.4px solid var(--line);
	color: var(--ink-900);
	font-weight: 700;
	font-size: 12.5px;
	line-height: 1.2;
	padding: 13px 24px;
	border-radius: var(--r-pill);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: all .25s var(--ease);
}

.btn-outline-white:hover { background: var(--blush-100); border-color: var(--plum-600); }

.btn-sage {
	position: relative;
	overflow: hidden;
	background: var(--ink-900);
	color: #fdf8f4;
	font-weight: 700;
	font-size: 12.5px;
	line-height: 1.2;
	padding: 13px 24px;
	border-radius: var(--r-pill);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}

.btn-sage:hover { background: var(--plum-700); box-shadow: 0 14px 30px rgba(31, 58, 52, .3); }

.acc-wrap { display: flex; flex-direction: column; gap: 10px; }

.faq-item { border: 1px solid var(--line); border-radius: var(--r-md); background: var(--white); overflow: hidden; transition: border-color .25s var(--ease); }
.faq-item:hover { border-color: rgba(138, 106, 46, .4); }

.faq-q {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	padding: 16px 18px;
	font-weight: 700;
	font-size: 13.5px;
	line-height: 1.2;
	color: var(--ink-900);
	text-align: left;
	/* No sitewide button{background:none} reset exists on this theme —
	   without this, Chrome's raw buttonface gray wins by default. */
	background: none;
	border: none;
}

.q-tog {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--paper);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform .3s var(--ease), background .3s var(--ease), color .3s var(--ease);
}

.q-tog .icon { width: 12px; height: 12px; }
.faq-item.open .q-tog { transform: rotate(45deg); background: var(--sage-600); color: #fff; }

.faq-ans { max-height: 0; overflow: hidden; transition: max-height .35s var(--ease); }
/* line-height !important: beats log-parent-reset.css's .page .type-page .entry-content p
   {line-height:inherit} (0,3,1) — this is a <p>, so it otherwise loses to that reset. */
.faq-ans p { padding: 0 18px 18px; font-size: 12.5px; line-height: 1.6 !important; color: var(--gray-600); }
