
	.reading-progress-container.svelte-1613fec {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 50;
	}

	.time-estimate.svelte-1613fec {
		position: fixed;
		top: 1.5rem;
		right: 1.5rem;
		z-index: 51;
		background: var(--bg-elevated);
		border: 1px solid var(--border-subtle);
		border-radius: 999px;
		padding: 0.5rem 1rem;
		backdrop-filter: blur(8px);
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
		animation: svelte-1613fec-slideIn 300ms ease;
	}

	.time-text.svelte-1613fec {
		font-size: 0.8125rem;
		color: var(--text-muted);
		font-weight: 500;
		letter-spacing: 0.02em;
	}

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

	@media (max-width: 768px) {
		.time-estimate.svelte-1613fec {
			top: 1rem;
			right: 1rem;
			padding: 0.375rem 0.875rem;
		}

		.time-text.svelte-1613fec {
			font-size: 0.75rem;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.time-estimate.svelte-1613fec {
			animation: none;
		}
	}

	/* Support for iOS safe area (iPhone X+ bottom bar) */
	.pb-safe.svelte-1p7v7h3 {
		padding-bottom: env(safe-area-inset-bottom, 20px);
	}

	.toc-sidebar.svelte-1dzzduv {
		position: sticky;
		top: 5rem;
		max-height: calc(100vh - 6rem);
		overflow-y: auto;
		padding-bottom: 2rem;
		transition: all 200ms ease;
	}

	.toc-sidebar.is-sticky.svelte-1dzzduv {
		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);
	}

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

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

	.toc-title.svelte-1dzzduv {
		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-1dzzduv {
		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-1dzzduv:hover {
		background: var(--bg-soft);
		color: var(--accent);
	}

	.collapse-button.svelte-1dzzduv:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 2px;
	}

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

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

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

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

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

	.toc-link.svelte-1dzzduv {
		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-1dzzduv {
		padding-left: 1.5rem;
		font-size: 0.8125rem;
	}

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

	.toc-link.svelte-1dzzduv:focus-visible {
		outline: 2px solid var(--accent);
		outline-offset: 2px;
	}

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

	.toc-bullet.svelte-1dzzduv {
		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-1dzzduv {
		background: var(--accent);
		box-shadow: 0 0 0 3px var(--accent-soft);
		transform: scale(1.2);
	}

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

	/* Scrollbar styling */
	.toc-sidebar.svelte-1dzzduv::-webkit-scrollbar {
		width: 4px;
	}

	.toc-sidebar.svelte-1dzzduv::-webkit-scrollbar-track {
		background: transparent;
	}

	.toc-sidebar.svelte-1dzzduv::-webkit-scrollbar-thumb {
		background: var(--border-subtle);
		border-radius: 999px;
	}

	.toc-sidebar.svelte-1dzzduv::-webkit-scrollbar-thumb:hover {
		background: var(--accent);
	}

	@media (prefers-reduced-motion: reduce) {
		.toc-sidebar.svelte-1dzzduv,
		.toc-link.svelte-1dzzduv,
		.collapse-button.svelte-1dzzduv svg,
		.progress-fill.svelte-1dzzduv,
		.toc-bullet.svelte-1dzzduv {
			transition: none;
		}
	}
