.audio-player-container-2100 {
	background-color: #f7f7f7;
	border-radius: 12px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.05);
	font-family: inherit;
	max-width: 100%;
}

.ap-info-2100 {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.ap-title-2100 {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 600;
	color: #333;
}

.ap-author-2100 {
	font-size: 0.9rem;
	color: #666;
}

.ap-controls-wrapper-2100 {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ap-btn-2100 {
	background: none;
	border: none;
	padding: 8px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #333;
	border-radius: 50%;
	transition: background-color 0.2s;
}

.ap-btn-2100:hover {
	background-color: rgba(0,0,0,0.05);
}

.ap-btn-2100 svg {
	fill: currentColor;
}

.ap-progress-bar-2100 {
	flex-grow: 1;
	height: 6px;
	background-color: rgba(0,0,0,0.1);
	border-radius: 3px;
	cursor: pointer;
	position: relative;
	overflow: hidden;
}

.ap-progress-filled-2100 {
	height: 100%;
	background-color: #D7926B; /* Fallback accent color */
	width: 0%;
	border-radius: 3px;
	transition: width 0.1s linear;
}

.ap-time-2100 {
	font-size: 0.8rem;
	color: #555;
	min-width: 80px;
	text-align: right;
}

.ap-notice-2100 {
	font-size: 0.85rem;
	color: #d32f2f;
	font-style: italic;
	margin-top: 8px;
}
