
	.widget-card.svelte-b1ltmu {
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 0.75rem;
		padding: 1rem;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
		animation: svelte-b1ltmu-slideIn 0.3s ease-out;
	}

	.widget-header.svelte-b1ltmu {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		margin-bottom: 1rem;
		padding-bottom: 0.75rem;
		border-bottom: 1px solid var(--border-subtle);
	}

	.icon-wrapper.svelte-b1ltmu {
		width: 2rem;
		height: 2rem;
		border-radius: 0.5rem;
		background: var(--accent-soft);
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--accent);
	}

	.header-text.svelte-b1ltmu {
		flex: 1;
		min-width: 0;
	}

	.widget-title.svelte-b1ltmu {
		font-size: 0.875rem;
		font-weight: 600;
		margin: 0;
		line-height: 1.2;
	}

	.widget-subtitle.svelte-b1ltmu {
		font-size: 0.75rem;
		color: var(--text-muted);
	}

	.widget-content.svelte-b1ltmu {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.description.svelte-b1ltmu {
		font-size: 0.875rem;
		color: var(--text-subtle);
		margin: 0;
		line-height: 1.5;
	}

	.code-preview.svelte-b1ltmu {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0.5rem 0.75rem;
		background: var(--bg-soft);
		border-radius: 0.5rem;
		font-size: 0.75rem;
		color: var(--text-muted);
	}

	.line-numbers.svelte-b1ltmu {
		display: flex;
		align-items: center;
		gap: 0.5rem;
	}

	.lang-badge.svelte-b1ltmu {
		text-transform: uppercase;
		font-weight: 600;
		letter-spacing: 0.05em;
		font-size: 0.625rem;
		padding: 0.125rem 0.375rem;
		background: var(--bg-surface);
		border-radius: 0.25rem;
		border: 1px solid var(--border-subtle);
	}

	@keyframes svelte-b1ltmu-slideIn {
		from {
			opacity: 0;
			transform: translateY(10px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

	.context-sidebar.svelte-1r3h9ea {
		position: sticky;
		top: 5rem;
		max-height: calc(100vh - 6rem);
		overflow-y: auto;
		padding-bottom: 2rem;
		transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
	}

	.context-sidebar.is-sticky.svelte-1r3h9ea {
		/* Only apply background/border if we are NOT showing a widget, 
		   OR if we want the widget to be contained too. 
		   Let's keep it consistent. */
		background: var(--bg-elevated); /* Fallback if vars not set */
		/* We'll use a transparent bg for the sidebar container usually 
		   so widgets look like they float, or contained? 
		   Let's keep the TOC style for now. */
	}

	/* Override generic sticky style for widgets to allow them to pop */
	.context-sidebar.is-sticky.svelte-1r3h9ea:has(.widget-container:where(.svelte-1r3h9ea)) {
		background: transparent;
		border: none;
		box-shadow: none;
		padding: 0 0 0 2rem; /* Maintain left padding/spacing */
	}

	.toc-header.svelte-1r3h9ea {
		margin-bottom: 0.75rem;
		position: sticky;
		top: 0;
		background: inherit;
		z-index: 1;
	}

	.toc-title-row.svelte-1r3h9ea {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		margin-bottom: 0.5rem;
	}

	.toc-title.svelte-1r3h9ea {
		font-size: 0.875rem;
		font-weight: 600;
		color: var(--text-muted);
		text-transform: uppercase;
		letter-spacing: 0.05em;
		flex: 1;
		margin: 0;
	}

	.collapse-button.svelte-1r3h9ea {
		padding: 0.25rem;
		background: transparent;
		border: none;
		color: var(--text-subtle);
		cursor: pointer;
		transition: all 150ms;
		border-radius: 0.375rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.collapse-button.svelte-1r3h9ea:hover {
		background: var(--bg-soft);
		color: var(--accent);
	}

	.collapse-button.svelte-1r3h9ea svg {
		transition: transform 200ms ease;
	}

	.collapse-button.svelte-1r3h9ea svg.rotated {
		transform: rotate(-90deg);
	}

	.progress-bar.svelte-1r3h9ea {
		height: 2px;
		background: var(--border-subtle);
		border-radius: 999px;
		overflow: hidden;
		margin-top: 0.5rem;
	}

	.progress-fill.svelte-1r3h9ea {
		height: 100%;
		background: linear-gradient(90deg, var(--accent-strong), var(--accent));
		transition: width 300ms ease;
		border-radius: 999px;
	}

	.toc-nav.svelte-1r3h9ea {
		display: flex;
		flex-direction: column;
		gap: 0.25rem;
	}

	.toc-link.svelte-1r3h9ea {
		display: flex;
		align-items: flex-start;
		gap: 0.5rem;
		padding: 0.375rem 0.5rem;
		font-size: 0.875rem;
		text-decoration: none;
		color: var(--text-muted);
		border-radius: 0.375rem;
		transition: all 150ms;
		position: relative;
	}

	.toc-link.level-3.svelte-1r3h9ea {
		padding-left: 1.5rem;
		font-size: 0.8125rem;
	}

	.toc-link.svelte-1r3h9ea:hover {
		background: var(--bg-soft);
		color: var(--accent);
	}

	.toc-link.active.svelte-1r3h9ea {
		background: var(--accent-soft);
		color: var(--accent);
		font-weight: 500;
	}

	.toc-bullet.svelte-1r3h9ea {
		width: 6px;
		height: 6px;
		border-radius: 50%;
		background: var(--text-subtle);
		flex-shrink: 0;
		margin-top: 0.375rem;
		transition: all 150ms;
	}

	.toc-bullet.active.svelte-1r3h9ea {
		background: var(--accent);
		box-shadow: 0 0 0 3px var(--accent-soft);
		transform: scale(1.2);
	}

	.toc-text.svelte-1r3h9ea {
		flex: 1;
		line-height: 1.5;
	}

	/* Widget Transitions */
	.widget-container.svelte-1r3h9ea {
		animation: svelte-1r3h9ea-fadeIn 0.3s ease;
	}

	@keyframes svelte-1r3h9ea-fadeIn {
		from {
			opacity: 0;
		}
		to {
			opacity: 1;
		}
	}

	/* You might want to define accent-rgb in your app.css or as a Svelte var */
	/* For now, assuming --accent translates to something like 56, 189, 248 for RGB */
	/* If not, we'll need to update app.css */

	.related-posts.svelte-1fosch6 {
		margin-top: 4rem;
		padding-top: 2rem;
		border-top: 1px solid var(--border-subtle);
	}

	.section-header.svelte-1fosch6 {
		margin-bottom: 2rem;
		text-align: center;
	}

	.section-title.svelte-1fosch6 {
		font-size: 1.75rem;
		font-weight: 700;
		color: var(--text-main);
		margin: 0 0 0.5rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.section-subtitle.svelte-1fosch6 {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
	}

	.posts-grid.svelte-1fosch6 {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
		gap: 1.5rem;
	}

	.post-card.svelte-1fosch6 {
		display: block;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.5rem;
		text-decoration: none;
		transition: all 150ms ease;
		height: 100%;
	}

	.post-content.svelte-1fosch6 {
		display: flex;
		flex-direction: column;
		height: 100%;
	}

	.post-meta.svelte-1fosch6 {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.75rem;
	}

	.post-title.svelte-1fosch6 {
		font-size: 1.125rem;
		font-weight: 600;
		color: var(--text-main);
		margin: 0 0 0.75rem;
		line-height: 1.4;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		transition: color 150ms;
	}

	.post-card.svelte-1fosch6:hover .post-title:where(.svelte-1fosch6) {
		color: var(--accent);
	}

	.post-excerpt.svelte-1fosch6 {
		font-size: 0.9rem;
		color: var(--text-muted);
		margin: 0 0 1rem;
		line-height: 1.6;
		flex: 1;
		display: -webkit-box;
		line-clamp: 3;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.read-more.svelte-1fosch6 {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		font-weight: 500;
		color: var(--accent);
		margin-top: auto;
	}

	.arrow-icon.svelte-1fosch6 {
		display: inline-flex;
		width: 1rem;
		height: 1rem;
		transition: transform 150ms;
	}

	.arrow-icon.svelte-1fosch6 svg {
		width: 100%;
		height: 100%;
	}

	.post-card.svelte-1fosch6:hover .arrow-icon:where(.svelte-1fosch6) {
		transform: translateX(4px);
	}

	@media (max-width: 768px) {
		.section-title.svelte-1fosch6 {
			font-size: 1.5rem;
		}

		.posts-grid.svelte-1fosch6 {
			grid-template-columns: 1fr;
		}
	}

	.newsletter-signup.svelte-1kz8p5t {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 2rem;
		margin: 3rem 0;
	}

	.newsletter-header.svelte-1kz8p5t {
		display: flex;
		align-items: flex-start;
		gap: 1rem;
		margin-bottom: 1.5rem;
	}

	.newsletter-icon.svelte-1kz8p5t {
		flex-shrink: 0;
		width: 3rem;
		height: 3rem;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 0.75rem;
		background: var(--accent-soft);
		color: var(--accent);
	}

	.newsletter-title.svelte-1kz8p5t {
		font-size: 1.25rem;
		font-weight: 600;
		color: var(--text-main);
		margin: 0 0 0.25rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.newsletter-subtitle.svelte-1kz8p5t {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
		line-height: 1.5;
	}

	.newsletter-form.svelte-1kz8p5t {
		margin-bottom: 0.75rem;
	}

	.input-wrapper.svelte-1kz8p5t {
		display: flex;
		gap: 0.75rem;
		margin-bottom: 1rem;
	}

	.email-input.svelte-1kz8p5t {
		flex: 1;
		padding: 0.75rem 1rem;
		background: var(--bg-soft);
		border: 1px solid var(--border-subtle);
		border-radius: 0.5rem;
		color: var(--text-main);
		font-size: 0.95rem;
		transition: all 150ms;
	}

	.email-input.svelte-1kz8p5t:focus {
		outline: none;
		border-color: var(--accent);
		box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
	}

	.email-input.svelte-1kz8p5t:disabled {
		opacity: 0.6;
		cursor: not-allowed;
	}

	.email-input.svelte-1kz8p5t::-moz-placeholder {
		color: var(--text-subtle);
	}

	.email-input.svelte-1kz8p5t::placeholder {
		color: var(--text-subtle);
	}

	.subscribe-button.svelte-1kz8p5t {
		padding: 0.75rem 1.5rem;
		background: var(--accent);
		color: #0f172a;
		border: none;
		border-radius: 0.5rem;
		font-size: 0.95rem;
		font-weight: 500;
		cursor: pointer;
		transition: all 150ms;
		display: flex;
		align-items: center;
		gap: 0.5rem;
		white-space: nowrap;
	}

	.subscribe-button.svelte-1kz8p5t:hover:not(:disabled) {
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.3);
	}

	.subscribe-button.svelte-1kz8p5t:disabled {
		opacity: 0.6;
		cursor: not-allowed;
		transform: none;
	}

	.loading-spinner.svelte-1kz8p5t {
		width: 1rem;
		height: 1rem;
		border: 2px solid rgba(15, 23, 42, 0.3);
		border-top-color: #0f172a;
		border-radius: 50%;
		animation: svelte-1kz8p5t-spin 0.6s linear infinite;
	}

	@keyframes svelte-1kz8p5t-spin {
		to {
			transform: rotate(360deg);
		}
	}

	.message.svelte-1kz8p5t {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		padding: 0.75rem 1rem;
		border-radius: 0.5rem;
		font-size: 0.9rem;
		line-height: 1.4;
	}

	.message.success.svelte-1kz8p5t {
		background: rgba(34, 197, 94, 0.1);
		border: 1px solid rgba(34, 197, 94, 0.3);
		color: rgb(74, 222, 128);
	}

	.message.error.svelte-1kz8p5t {
		background: rgba(239, 68, 68, 0.1);
		border: 1px solid rgba(239, 68, 68, 0.3);
		color: rgb(248, 113, 113);
	}

	.message-icon.svelte-1kz8p5t {
		display: inline-flex;
		width: 1.125rem;
		height: 1.125rem;
		flex-shrink: 0;
	}

	.message-icon.svelte-1kz8p5t svg {
		width: 100%;
		height: 100%;
	}

	.newsletter-privacy.svelte-1kz8p5t {
		font-size: 0.8125rem;
		color: var(--text-subtle);
		margin: 0;
		text-align: center;
	}

	@media (max-width: 640px) {
		.newsletter-signup.svelte-1kz8p5t {
			padding: 1.5rem;
		}

		.input-wrapper.svelte-1kz8p5t {
			flex-direction: column;
		}

		.subscribe-button.svelte-1kz8p5t {
			width: 100%;
			justify-content: center;
		}
	}

	.post-reactions.svelte-s359x2 {
		margin: 3rem 0;
		padding: 2rem;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.reactions-title.svelte-s359x2 {
		font-size: 1.125rem;
		font-weight: 600;
		color: var(--text-main);
		margin: 0 0 1.25rem;
		text-align: center;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.reactions-buttons.svelte-s359x2 {
		display: flex;
		gap: 1rem;
		justify-content: center;
	}

	.reaction-button.svelte-s359x2 {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.5rem;
		padding: 1rem 1.5rem;
		background: var(--bg-soft);
		border: 1px solid var(--border-subtle);
		border-radius: 0.75rem;
		color: var(--text-main);
		cursor: pointer;
		transition: all 200ms;
		min-width: 90px;
	}

	.reaction-button.svelte-s359x2:hover:not(:disabled) {
		transform: translateY(-2px);
		border-color: var(--accent);
		background: var(--accent-soft);
	}

	.reaction-button.svelte-s359x2:disabled {
		opacity: 0.6;
		cursor: not-allowed;
	}

	.reaction-button.svelte-s359x2:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 2px;
	}

	.reaction-button.active.svelte-s359x2 {
		background: var(--accent-soft);
		border-color: var(--accent);
	}

	.reaction-button.active.svelte-s359x2 .reaction-icon:where(.svelte-s359x2) {
		color: var(--accent);
		fill: var(--accent);
	}

	.reaction-icon.svelte-s359x2 {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 1.5rem;
		height: 1.5rem;
	}

	.reaction-icon.svelte-s359x2 svg {
		width: 100%;
		height: 100%;
		transition: all 200ms;
	}

	.reaction-count.svelte-s359x2 {
		font-size: 1.125rem;
		font-weight: 600;
		color: var(--text-main);
		font-family: 'Space Grotesk', system-ui, sans-serif;
	}

	.reaction-label.svelte-s359x2 {
		font-size: 0.8125rem;
		color: var(--text-muted);
	}

	@media (max-width: 640px) {
		.post-reactions.svelte-s359x2 {
			padding: 1.5rem;
		}

		.reactions-buttons.svelte-s359x2 {
			gap: 0.75rem;
		}

		.reaction-button.svelte-s359x2 {
			padding: 0.875rem 1.125rem;
			min-width: 75px;
		}

		.reaction-icon.svelte-s359x2 {
			width: 1.25rem;
			height: 1.25rem;
		}

		.reaction-count.svelte-s359x2 {
			font-size: 1rem;
		}
	}

	.continue-reading-banner.svelte-1xehky9 {
		position: fixed;
		bottom: 2rem;
		left: 50%;
		transform: translateX(-50%);
		z-index: 100;
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 0.75rem;
		padding: 1rem 1.25rem;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
		backdrop-filter: blur(12px);
		display: flex;
		align-items: center;
		gap: 1.5rem;
		max-width: 90vw;
		animation: svelte-1xehky9-slideUp 300ms ease;
	}

	.banner-content.svelte-1xehky9 {
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	.banner-icon.svelte-1xehky9 {
		display: inline-flex;
		width: 1.5rem;
		height: 1.5rem;
		color: var(--accent);
		flex-shrink: 0;
	}

	.banner-icon.svelte-1xehky9 svg {
		width: 100%;
		height: 100%;
	}

	.banner-text.svelte-1xehky9 {
		display: flex;
		flex-direction: column;
		gap: 0.125rem;
	}

	.banner-text.svelte-1xehky9 strong:where(.svelte-1xehky9) {
		font-size: 0.9375rem;
		font-weight: 600;
		color: var(--text-main);
	}

	.banner-text.svelte-1xehky9 span:where(.svelte-1xehky9) {
		font-size: 0.8125rem;
		color: var(--text-muted);
	}

	.banner-actions.svelte-1xehky9 {
		display: flex;
		align-items: center;
		gap: 0.75rem;
	}

	.resume-button.svelte-1xehky9 {
		padding: 0.5rem 1.25rem;
		background: var(--accent);
		color: #0f172a;
		border: none;
		border-radius: 0.5rem;
		font-size: 0.875rem;
		font-weight: 600;
		cursor: pointer;
		transition: all 150ms;
	}

	.resume-button.svelte-1xehky9:hover {
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.3);
	}

	.dismiss-button.svelte-1xehky9 {
		padding: 0.5rem;
		background: transparent;
		border: 1px solid var(--border-subtle);
		border-radius: 0.5rem;
		color: var(--text-subtle);
		cursor: pointer;
		transition: all 150ms;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.dismiss-icon.svelte-1xehky9 {
		display: inline-flex;
		width: 1rem;
		height: 1rem;
	}

	.dismiss-icon.svelte-1xehky9 svg {
		width: 100%;
		height: 100%;
	}

	.dismiss-button.svelte-1xehky9:hover {
		border-color: var(--accent);
		color: var(--accent);
	}

	@keyframes svelte-1xehky9-slideUp {
		from {
			opacity: 0;
			transform: translateX(-50%) translateY(20px);
		}
		to {
			opacity: 1;
			transform: translateX(-50%) translateY(0);
		}
	}

	@media (max-width: 768px) {
		.continue-reading-banner.svelte-1xehky9 {
			bottom: 6rem; /* Account for mobile bottom nav */
			padding: 0.875rem 1rem;
			gap: 1rem;
			flex-direction: column;
			align-items: stretch;
		}

		.banner-content.svelte-1xehky9 {
			gap: 0.75rem;
		}

		.banner-icon.svelte-1xehky9 {
			width: 1.25rem;
			height: 1.25rem;
		}

		.banner-actions.svelte-1xehky9 {
			width: 100%;
		}

		.resume-button.svelte-1xehky9 {
			flex: 1;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.continue-reading-banner.svelte-1xehky9 {
			animation: none;
		}
	}

	.category-link.svelte-4ht7zy {
		color: var(--text-muted);
		text-decoration: none;
		transition: color 150ms;
	}

	.category-link.svelte-4ht7zy:hover {
		color: var(--accent);
	}

	.blog-page.svelte-137jvoq {
		max-width: 48rem;
		margin: 0 auto;
	}

	.back-link.svelte-137jvoq {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		color: var(--text-subtle);
		text-decoration: none;
		margin-bottom: 2rem;
		transition: color 150ms;
	}

	.back-link.svelte-137jvoq:hover {
		color: var(--accent);
	}

	.page-header.svelte-137jvoq {
		margin-bottom: 2.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid var(--border-subtle);
	}

	.page-title.svelte-137jvoq {
		font-size: 2rem;
		font-weight: 700;
		color: var(--text-main);
		margin: 0 0 0.5rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.page-description.svelte-137jvoq {
		font-size: 1rem;
		color: var(--text-muted);
		margin: 0 0 0.5rem;
	}

	.page-subtitle.svelte-137jvoq {
		font-size: 0.875rem;
		color: var(--text-muted);
		margin: 0;
	}

	.posts-list.svelte-137jvoq {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.post-card.svelte-137jvoq {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.2rem 1.4rem;
		display: block;
		text-decoration: none;
		color: var(--text-main);
		position: relative;
		transition: border-color 150ms, box-shadow 150ms;
	}

	.post-meta.svelte-137jvoq {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.3rem;
	}

	.category-link.svelte-137jvoq {
		color: var(--text-subtle);
		text-decoration: none;
		transition: color 150ms;
		position: relative;
		z-index: 2;
	}

	.category-link.svelte-137jvoq:hover {
		color: var(--accent);
	}

	.post-title.svelte-137jvoq {
		font-size: 1.25rem;
		margin: 0 0 0.5rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		font-weight: 600;
	}

	.post-card.svelte-137jvoq:hover .post-title:where(.svelte-137jvoq),
	.post-card.svelte-137jvoq:focus-within .post-title:where(.svelte-137jvoq) {
		color: var(--accent);
	}

	.post-excerpt.svelte-137jvoq {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
		line-height: 1.6;
	}

	.stretched-link.svelte-137jvoq {
		position: absolute;
		inset: 0;
		z-index: 1;
		text-indent: -9999px;
		overflow: hidden;
		border-radius: inherit;
	}

	.stretched-link.svelte-137jvoq:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 3px;
		border-color: var(--accent);
		box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent-soft) 60%, transparent);
	}

	.empty-state.svelte-137jvoq {
		padding: 4rem 2rem;
		text-align: center;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.empty-state.svelte-137jvoq p:where(.svelte-137jvoq) {
		font-size: 1rem;
		color: var(--text-muted);
	}

	.pagination.svelte-137jvoq {
		display: flex;
		gap: 1rem;
		justify-content: center;
		margin-top: 3rem;
	}

	.pagination-btn.svelte-137jvoq {
		padding: 0.75rem 1.5rem;
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 0.5rem;
		color: var(--text-main);
		text-decoration: none;
		font-size: 0.875rem;
		font-weight: 500;
		transition: all 150ms;
	}

	.pagination-btn.svelte-137jvoq:hover {
		background: var(--accent-soft);
		border-color: var(--accent);
		color: var(--accent);
	}

	@media (max-width: 768px) {
		.page-title.svelte-137jvoq {
			font-size: 1.5rem;
		}
	}

	/* Hero Section */
	.landing-hero.svelte-1jlrkxj {
		margin-bottom: 4rem;
		padding: 5rem 0;
	}

	.hero-content.svelte-1jlrkxj {
		max-width: 42rem;
	}

	.hero-title.svelte-1jlrkxj {
		font-size: 2.5rem;
		font-weight: 700;
		margin-bottom: 1rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		line-height: 1.2;
	}

	.hero-subtitle.svelte-1jlrkxj {
		font-size: 1.125rem;
		color: var(--text-muted);
		margin-bottom: 2rem;
		line-height: 1.7;
	}

	.hero-actions.svelte-1jlrkxj {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
	}

	.button-primary.svelte-1jlrkxj,
	.button-ghost.svelte-1jlrkxj {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		padding: 0.75rem 1.5rem;
		border-radius: 999px;
		font-size: 0.95rem;
		font-weight: 500;
		text-decoration: none;
		transition: all 150ms;
		cursor: pointer;
	}

	.button-primary.svelte-1jlrkxj {
		background: linear-gradient(to right, var(--accent-strong), var(--accent));
		color: #0f172a;
		box-shadow: 0 10px 28px rgba(var(--accent-rgb), 0.22);
	}

	.button-primary.svelte-1jlrkxj:hover {
		filter: brightness(1.05);
		box-shadow: 0 12px 34px rgba(var(--accent-rgb), 0.3);
		transform: translateY(-1px);
	}

	.button-ghost.svelte-1jlrkxj {
		border: 1px solid var(--border-subtle);
		color: var(--text-muted);
		background: rgba(15, 23, 42, 0.7);
	}

	.button-ghost.svelte-1jlrkxj:hover {
		border-color: var(--accent);
		color: var(--accent);
		background: rgba(15, 23, 42, 0.9);
	}

	/* Section */
	.section.svelte-1jlrkxj {
		margin-bottom: 4rem;
	}

	.section-header.svelte-1jlrkxj {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 2rem;
	}

	.section-title.svelte-1jlrkxj {
		font-size: 1.5rem;
		font-weight: 700;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		margin: 0;
	}

	.section-link.svelte-1jlrkxj {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		color: var(--accent);
		text-decoration: none;
		transition: all 150ms;
	}

	.section-link.svelte-1jlrkxj:hover {
		gap: 0.75rem;
	}

	/* Posts List */
	.posts-list.svelte-1jlrkxj {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.post-card.svelte-1jlrkxj {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.2rem 1.4rem;
		display: block;
		text-decoration: none;
	}

	.post-meta.svelte-1jlrkxj {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.3rem;
	}

	.category-link.svelte-1jlrkxj {
		color: var(--text-subtle);
	}

	.post-title.svelte-1jlrkxj {
		font-size: 1.25rem;
		margin: 0 0 0.5rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		font-weight: 600;
	}

	.post-card.svelte-1jlrkxj:hover .post-title:where(.svelte-1jlrkxj) {
		color: var(--accent);
	}

	.post-excerpt.svelte-1jlrkxj {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
		line-height: 1.6;
	}

	.empty-state.svelte-1jlrkxj {
		padding: 4rem 2rem;
		text-align: center;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.empty-state.svelte-1jlrkxj p:where(.svelte-1jlrkxj) {
		font-size: 1rem;
		color: var(--text-muted);
	}

	@media (max-width: 768px) {
		.hero-title.svelte-1jlrkxj {
			font-size: 2rem;
		}

		.hero-subtitle.svelte-1jlrkxj {
			font-size: 1rem;
		}

		.section-title.svelte-1jlrkxj {
			font-size: 1.25rem;
		}
	}

	.blog-page.svelte-r9a43i {
		max-width: 48rem;
		margin: 0 auto;
	}

	.back-link.svelte-r9a43i {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		color: var(--text-subtle);
		text-decoration: none;
		margin-bottom: 2rem;
		transition: color 150ms;
	}

	.back-link.svelte-r9a43i:hover {
		color: var(--accent);
	}

	.page-header.svelte-r9a43i {
		margin-bottom: 2.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid var(--border-subtle);
		text-align: center;
	}

	.category-icon.svelte-r9a43i {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 4rem;
		height: 4rem;
		border-radius: 1rem;
		background: var(--accent-soft);
		color: var(--accent);
		margin-bottom: 1rem;
	}

	.page-title.svelte-r9a43i {
		font-size: 2rem;
		font-weight: 700;
		color: var(--text-main);
		margin: 0 0 0.5rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.page-description.svelte-r9a43i {
		font-size: 1rem;
		color: var(--text-muted);
		margin: 0 0 0.5rem;
	}

	.page-subtitle.svelte-r9a43i {
		font-size: 0.875rem;
		color: var(--text-muted);
		margin: 0;
	}

	.posts-list.svelte-r9a43i {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.post-card.svelte-r9a43i {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.2rem 1.4rem;
	}

	.post-meta.svelte-r9a43i {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.3rem;
	}

	.post-title.svelte-r9a43i {
		font-size: 1.25rem;
		margin: 0 0 0.5rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		font-weight: 600;
	}

	.post-title.svelte-r9a43i a:where(.svelte-r9a43i) {
		color: var(--text-main);
		text-decoration: none;
		transition: color 150ms;
	}

	.post-title.svelte-r9a43i a:where(.svelte-r9a43i):hover {
		color: var(--accent);
	}

	.post-excerpt.svelte-r9a43i {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0 0 0.75rem;
		line-height: 1.6;
	}

	.empty-state.svelte-r9a43i {
		padding: 4rem 2rem;
		text-align: center;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.empty-state.svelte-r9a43i p:where(.svelte-r9a43i) {
		font-size: 1rem;
		color: var(--text-muted);
	}

	.pagination.svelte-r9a43i {
		display: flex;
		gap: 1rem;
		justify-content: center;
		margin-top: 3rem;
	}

	.pagination-btn.svelte-r9a43i {
		padding: 0.75rem 1.5rem;
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 0.5rem;
		color: var(--text-main);
		text-decoration: none;
		font-size: 0.875rem;
		font-weight: 500;
		transition: all 150ms;
	}

	.pagination-btn.svelte-r9a43i:hover {
		background: var(--accent-soft);
		border-color: var(--accent);
		color: var(--accent);
	}

	@media (max-width: 768px) {
		.page-title.svelte-r9a43i {
			font-size: 1.5rem;
		}
	}

	.blog-page.svelte-zpz5jm {
		max-width: 48rem;
		margin: 0 auto;
	}

	.back-link.svelte-zpz5jm {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		color: var(--text-subtle);
		text-decoration: none;
		margin-bottom: 2rem;
		transition: color 150ms;
	}

	.back-link.svelte-zpz5jm:hover {
		color: var(--accent);
	}

	.page-header.svelte-zpz5jm {
		margin-bottom: 2.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid var(--border-subtle);
		text-align: center;
	}

	.tag-icon.svelte-zpz5jm {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 4rem;
		height: 4rem;
		border-radius: 1rem;
		background: var(--accent-soft);
		color: var(--accent);
		margin-bottom: 1rem;
	}

	.page-title.svelte-zpz5jm {
		font-size: 2rem;
		font-weight: 700;
		color: var(--text-main);
		margin: 0 0 0.5rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.page-subtitle.svelte-zpz5jm {
		font-size: 0.875rem;
		color: var(--text-muted);
		margin: 0;
	}

	.posts-list.svelte-zpz5jm {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.post-card.svelte-zpz5jm {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.2rem 1.4rem;
	}

	.post-meta.svelte-zpz5jm {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.3rem;
	}

	.category-link.svelte-zpz5jm {
		color: var(--text-subtle);
		text-decoration: none;
		transition: color 150ms;
	}

	.category-link.svelte-zpz5jm:hover {
		color: var(--accent);
	}

	.post-title.svelte-zpz5jm {
		font-size: 1.25rem;
		margin: 0 0 0.5rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		font-weight: 600;
	}

	.post-title.svelte-zpz5jm a:where(.svelte-zpz5jm) {
		color: var(--text-main);
		text-decoration: none;
		transition: color 150ms;
	}

	.post-title.svelte-zpz5jm a:where(.svelte-zpz5jm):hover {
		color: var(--accent);
	}

	.post-excerpt.svelte-zpz5jm {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
		line-height: 1.6;
	}

	.empty-state.svelte-zpz5jm {
		padding: 4rem 2rem;
		text-align: center;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.empty-state.svelte-zpz5jm p:where(.svelte-zpz5jm) {
		font-size: 1rem;
		color: var(--text-muted);
	}

	.pagination.svelte-zpz5jm {
		display: flex;
		gap: 1rem;
		justify-content: center;
		margin-top: 3rem;
	}

	.pagination-btn.svelte-zpz5jm {
		padding: 0.75rem 1.5rem;
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 0.5rem;
		color: var(--text-main);
		text-decoration: none;
		font-size: 0.875rem;
		font-weight: 500;
		transition: all 150ms;
	}

	.pagination-btn.svelte-zpz5jm:hover {
		background: var(--accent-soft);
		border-color: var(--accent);
		color: var(--accent);
	}

	@media (max-width: 768px) {
		.page-title.svelte-zpz5jm {
			font-size: 1.5rem;
		}
	}

	.search-page.svelte-1cmkeei {
		max-width: 48rem;
		margin: 0 auto;
	}

	.back-link.svelte-1cmkeei {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.875rem;
		color: var(--text-subtle);
		text-decoration: none;
		margin-bottom: 2rem;
		transition: color 150ms;
	}

	.back-link.svelte-1cmkeei:hover {
		color: var(--accent);
	}

	.page-header.svelte-1cmkeei {
		margin-bottom: 2.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid var(--border-subtle);
		text-align: center;
	}

	.search-icon.svelte-1cmkeei {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 4rem;
		height: 4rem;
		border-radius: 1rem;
		background: var(--accent-soft);
		color: var(--accent);
		margin-bottom: 1rem;
	}

	.page-title.svelte-1cmkeei {
		font-size: 2rem;
		font-weight: 700;
		color: var(--text-main);
		margin: 0 0 0.5rem;
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
	}

	.search-query.svelte-1cmkeei {
		font-size: 1.125rem;
		color: var(--accent);
		margin: 0 0 0.5rem;
		font-weight: 500;
	}

	.page-subtitle.svelte-1cmkeei {
		font-size: 0.875rem;
		color: var(--text-muted);
		margin: 0;
	}

	.results-list.svelte-1cmkeei {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.result-card.svelte-1cmkeei {
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
		padding: 1.2rem 1.4rem;
	}

	.result-meta.svelte-1cmkeei {
		font-size: 0.75rem;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		color: var(--text-subtle);
		margin-bottom: 0.3rem;
	}

	.result-type.svelte-1cmkeei {
		display: inline-block;
		padding: 0.125rem 0.5rem;
		background: var(--accent-soft);
		color: var(--accent);
		border-radius: 0.25rem;
		font-weight: 600;
	}

	.result-score.svelte-1cmkeei {
		color: var(--accent);
		font-weight: 600;
	}

	.result-title.svelte-1cmkeei {
		font-size: 1.25rem;
		margin: 0 0 0.5rem;
		color: var(--text-main);
		font-family: 'Space Grotesk', 'Plus Jakarta Sans', system-ui, sans-serif;
		font-weight: 600;
	}

	.result-title.svelte-1cmkeei a:where(.svelte-1cmkeei) {
		color: var(--text-main);
		text-decoration: none;
		transition: color 150ms;
	}

	.result-title.svelte-1cmkeei a:where(.svelte-1cmkeei):hover {
		color: var(--accent);
	}

	.result-excerpt.svelte-1cmkeei {
		font-size: 0.95rem;
		color: var(--text-muted);
		margin: 0;
		line-height: 1.6;
	}

	.empty-state.svelte-1cmkeei {
		padding: 4rem 2rem;
		text-align: center;
		background: var(--bg-elevated);
		border-radius: 0.9rem;
		border: 1px solid var(--border-subtle);
	}

	.empty-state.svelte-1cmkeei p:where(.svelte-1cmkeei) {
		font-size: 1rem;
		color: var(--text-muted);
		margin: 0 0 0.5rem;
	}

	.empty-hint.svelte-1cmkeei {
		font-size: 0.875rem !important;
		color: var(--text-subtle) !important;
	}

	@media (max-width: 768px) {
		.page-title.svelte-1cmkeei {
			font-size: 1.5rem;
		}

		.search-query.svelte-1cmkeei {
			font-size: 1rem;
		}
	}
