/**
 * Semantic Document Search - Post-Specific Styles
 *
 * Custom styles for the semantic document search feature post.
 *
 * Components included:
 * - Steps flow (.steps-flow, .step-card)
 * - Technical flow diagram (.tech-flow, .tech-flow-step)
 * - Comparison table wrapper (.comparison-table-wrapper)
 *
 * Reuses from shared CSS:
 * - TL;DR definition + takeaways (agentic-ai post)
 * - FAQ list (agentic-ai post)
 * - Use case cards (front-end-ai-chatbot post)
 * - Before/after comparison (front-end-ai-chatbot post)
 * - CTA card (shared-post-components.css)
 *
 * @package AgenticWP
 */

/* ==========================================================================
   Steps Flow (How It Works)
   ========================================================================== */

.steps-flow {
	margin: 32px 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.step-card {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding: 24px;
	background: #111827;
	border: 1px solid var(--line);
	border-radius: 12px;
}

.step-number {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: var(--accent);
	border-radius: 50%;
	color: var(--bg);
	font-size: 20px;
	font-weight: 700;
}

.step-content {
	flex: 1;
}

.step-title {
	font-size: 18px;
	font-weight: 600;
	color: var(--ink);
	margin: 0 0 8px;
}

.step-content p {
	font-size: 16px;
	line-height: 1.65;
	color: var(--ink);
	margin: 0;
}

/* ==========================================================================
   Technical Flow Diagram (Under the Hood)
   ========================================================================== */

.tech-flow {
	margin: 32px 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	position: relative;
}

.tech-flow::before {
	content: '';
	position: absolute;
	left: 23px;
	top: 48px;
	bottom: 48px;
	width: 2px;
	background: var(--line);
}

.tech-flow-step {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding: 16px 0;
	position: relative;
}

.tech-flow-icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: var(--bg);
	border: 2px solid var(--accent);
	border-radius: 50%;
	color: var(--accent);
	z-index: 1;
}

.tech-flow-icon svg {
	width: 22px;
	height: 22px;
}

.tech-flow-content {
	flex: 1;
	padding-top: 4px;
}

.tech-flow-title {
	font-size: 18px;
	font-weight: 600;
	color: var(--ink);
	margin: 0 0 8px;
}

.tech-flow-content p {
	font-size: 16px;
	line-height: 1.65;
	color: var(--ink);
	margin: 0;
}

/* ==========================================================================
   Comparison Table Wrapper
   ========================================================================== */

.comparison-table-wrapper {
	margin: 32px 0;
	border: 1px solid var(--line);
	border-radius: 16px;
	overflow: hidden;
}

.comparison-table-wrapper .use-case-summary-table {
	margin: 0;
}

/* ==========================================================================
   Responsive: Tablet (max-width: 900px)
   ========================================================================== */

@media (max-width: 900px) {
	.comparison-table-wrapper .use-case-summary-table th:nth-child(2),
	.comparison-table-wrapper .use-case-summary-table td:nth-child(2) {
		display: none;
	}
}

/* ==========================================================================
   Responsive: Mobile (max-width: 640px)
   ========================================================================== */

@media (max-width: 640px) {
	.step-card {
		padding: 20px;
		gap: 16px;
	}

	.step-number {
		width: 38px;
		height: 38px;
		font-size: 17px;
	}

	.step-title {
		font-size: 17px;
	}

	.step-content p {
		font-size: 15px;
	}

	.tech-flow::before {
		left: 19px;
	}

	.tech-flow-step {
		gap: 16px;
		padding: 12px 0;
	}

	.tech-flow-icon {
		width: 40px;
		height: 40px;
	}

	.tech-flow-icon svg {
		width: 18px;
		height: 18px;
	}

	.tech-flow-title {
		font-size: 17px;
	}

	.tech-flow-content p {
		font-size: 15px;
	}

	.comparison-table-wrapper .use-case-summary-table th,
	.comparison-table-wrapper .use-case-summary-table td {
		padding: 10px 16px;
		font-size: 14px;
	}
}

/* ==========================================================================
   Accessibility: Reduced Motion
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
	.step-card,
	.tech-flow-step {
		transition: none;
	}
}
