/**
 * LAMP Google Reviews Style
 * Trustindex Google レビューウィジェットのカスタムスタイル
 *
 * キーカラーは管理画面から変更可能。
 * CSS変数 --lamp-grs-key-color は PHP からインラインCSSとして :root に注入される。
 */

/* --- Base / Container --- */
.ti-widget,
.ti-widget[data-set-id] {
	background-color: transparent !important;
	font-family: 'Noto Serif JP', serif !important;
}

.ti-widget .ti-widget-container {
	background-color: transparent !important;
}

/* --- Footer (Rating Header Area) --- */
.ti-widget .ti-footer,
.ti-widget .ti-footer-grid {
	background-color: transparent !important;
	border-bottom: 1px solid #222 !important;
	padding-bottom: 24px !important;
	margin-bottom: 16px !important;
}

.ti-widget .ti-fade-container {
	background: transparent !important;
}

/* Rating text "EXCELLENT" */
.ti-widget .ti-rating-text {
	color: #e5e5e5 !important;
}

.ti-widget strong.ti-rating,
.ti-widget .ti-rating-text strong.ti-rating {
	color: var(--lamp-grs-key-color) !important;
	font-family: 'Cormorant Garamond', serif !important;
	letter-spacing: 0.15em !important;
	font-size: 1.1em !important;
}

/* "Based on X reviews" */
.ti-widget .ti-rating-text span,
.ti-widget .ti-rating-text .nowrap {
	color: #888 !important;
	font-size: 0.85rem !important;
}

.ti-widget .ti-rating-text strong[data-number-formatted] {
	color: var(--lamp-grs-key-color) !important;
}

/* Google logo area */
.ti-widget .ti-large-logo {
	opacity: 0.7;
}

/* --- Review Cards --- */
.ti-widget .ti-review-item,
.ti-widget .ti-review-item.source-Google {
	background-color: #0f0f0f !important;
	border: none !important;
	border-radius: 4px !important;
	transition: border-color 0.3s ease !important;
}

.ti-widget .ti-review-item:hover {
	border-color: #333 !important;
}

.ti-widget .ti-review-item .ti-inner {
	background-color: transparent !important;
}

/* Review header */
.ti-widget .ti-review-header {
	border-bottom: none !important;
}

.ti-widget .ti-platform-icon img {
	opacity: 0.6;
}

/* Reviewer name */
.ti-widget .ti-name {
	color: #e5e5e5 !important;
	font-weight: 500 !important;
	font-size: 0.9rem !important;
}

/* Date */
.ti-widget .ti-date,
.ti-widget .ti-date span {
	color: #888 !important;
	font-size: 0.75rem !important;
}

/* Stars */
.ti-widget .ti-stars {
	opacity: 0.9;
}

/* Review body text — clamp to 3 lines */
.ti-widget .ti-review-text-container {
	color: #e5e5e5 !important;
	font-size: 0.875rem !important;
	line-height: 1.8 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	max-height: 5.4em !important;
}

/* "Read more" link */
.ti-widget .ti-read-more span,
.ti-widget .ti-read-more .ti-read-more-active {
	color: var(--lamp-grs-key-color) !important;
	font-size: 0.8rem !important;
	letter-spacing: 0.05em !important;
}

/* Verified badge tooltip */
.ti-widget .ti-verified-review {
	color: #888 !important;
}

.ti-widget .ti-verified-tooltip {
	background-color: #0f0f0f !important;
	color: #888 !important;
	border: 1px solid #222 !important;
	font-size: 0.7rem !important;
}

/* --- Slider Controls --- */
.ti-widget .ti-controls .ti-next,
.ti-widget .ti-controls .ti-prev {
	background-color: rgba(197, 160, 89, 0.1) !important;
	border: 1px solid rgba(197, 160, 89, 0.4) !important;
	border-radius: 50% !important;
	outline: none !important;
	width: 30px !important;
	height: 30px !important;
	padding: 0 !important;
	transition: all 0.3s ease !important;
}

.ti-widget .ti-controls .ti-next:hover,
.ti-widget .ti-controls .ti-prev:hover {
	background-color: rgba(197, 160, 89, 0.25) !important;
	border-color: var(--lamp-grs-key-color) !important;
}

/* 矢印: ::before のみで描画 */
.ti-widget .ti-controls .ti-next::before,
.ti-widget .ti-controls .ti-prev::before {
	content: "" !important;
	display: block !important;
	position: absolute !important;
	width: 8px !important;
	height: 8px !important;
	top: 50% !important;
	left: 50% !important;
	background: transparent !important;
	border-style: solid !important;
	border-width: 0 0 2px 2px !important;
	border-color: rgb(181, 181, 181) !important;
	transition: 200ms ease-out !important;
}

.ti-widget .ti-controls .ti-next::before {
	transform: translate(-60%, -50%) rotate(-135deg) !important;
}

.ti-widget .ti-controls .ti-prev::before {
	transform: translate(-30%, -50%) rotate(45deg) !important;
}

/* ::after を無効化 */
.ti-widget .ti-controls .ti-next::after,
.ti-widget .ti-controls .ti-prev::after {
	display: none !important;
}

/* Progress bar */
.ti-widget .ti-controls-line {
	background-color: #222 !important;
	height: 2px !important;
	margin-top: 16px !important;
}

.ti-widget .ti-controls-line .dot {
	background-color: var(--lamp-grs-key-color) !important;
	height: 2px !important;
}

/* --- Tooltip (非表示) --- */
span.ti-tooltip {
	display: none;
}
